외부 함수 호출
지역 변수와 내부 함수가 같은 렉시컬 환경에 만들어진다.
environment클로저는 함수가 끝난 뒤에도 외부 변수를 기억하는 구조다. 호출 스택이 사라져도 참조되는 렉시컬 환경은 남는다.
지역 변수와 내부 함수가 같은 렉시컬 환경에 만들어진다.
environment외부 함수 실행은 끝나지만 내부 함수가 변수를 참조한다.
return fn참조 중인 변수는 가비지 컬렉션 대상이 되지 않는다.
closed over반환된 함수가 다시 실행될 때 이전 값을 읽고 갱신한다.
state반복문 변수 캡처나 공유 상태 변경에서 예상과 다른 결과가 날 수 있다.
capturefunction counter() {
let n = 0;
return function () {
n += 1;
return n;
};
}