Modern JS Deep Dive
[JS Deep Dive] 24, 25, 26장 정리 - 클로저, 클래스, ES6 함수의 추가 기능에 관하여
클로저클로저는 함수와 그 함수가 선언된 렉시컬 환경과의 조합 자바스크립트 엔진은 함수를 어디서 호출했는지가 아니라 함수를 어디에 정의했는지에 따라 상위 스코프를 결정→ 렉시컬 스코프(정적 스코프) 렉시컬 환경의 “외부 렉시컬 환경에 대한 참조”에 저장할 참조값,즉 상위 스코프에 대한 참조는 함수 정의가 평가되는 시점에 함수가 정의된 환경(위치)의 해 결정 렉시컬 스코프가 가능하려면 함수는 자신이 정의된 환경, 즉 상위 스코프(함수 정의가 위치하는 스코프)를 기억해야→ 함수는 자신의 내부 슬롯 [[Environment]]에 자신이 정의된 환경, 상위 스코프의 참조를 저장 함수 객체의 내부 슬롯 [[Environment]]에 저장된 현재 실행 중인 실행 컨텍스트의 렉시컬 환경의 참조가 상위 스코프이며, 자신..