클로저 : 어떤 함수에서 선언한 변수를 참조하는 내부함수를 외부로 전달항 경우 함수의 실행 컨텍스트가 종료된 후에도 해당 변수가 사라지지 않은 현상 const outer = function(){ let a = 1 let inner = function(){ return ++a } return inner } const outer2 = outer() console.log(outer2) // 2 console.log(outer2) // 3 그 이유는 가비지 컬렉터의 동작 방식 때문입니다. 가비지 컬렉터는 참조하는 변수가 하나라도 있다면 그 값은 수집 대상에 포함시키지 않습니다. 클로저와 메모리 관리 클로저는 어떤 필요에 의해 의도적으로 함수의 지역변수를 메모리를 소모하도록 함으로써 발생합니다. 즉 그 필요성이 ..