본문 바로가기

나를 성장시키는 알고리즘

클로저

문제 : 안에 정의된 변수가 있다 이를 어떻게 빼내서 출력할래?


해결: count를 함수 리턴값에 저장함으로써 함수 선언을 저장 새로운 변수를 호출할 때 이 함수의 값을 부를 수 있음

function check(element){
    //안에 변수가 정의 됨
    let count =0

    for(let i=0; i<element.length; i++){
        
        let index = element[i]
        
        if(array.includes(index)){

                beConfrimed[index]=true
                count++
        }

    }
    //함수로 선언해서 저장
    return function(){
            
                return count
            }

}
//check함수의 리턴 함수 값이 저장 됨 . 여기서 return 값은 count
let result = check(element)

//이를 어떻게 부를까? 쉽지~ result함수를 호출하면 되지 그러면 안에 있는 count 값이 전역변수로 살아날 수 있음