클로저1 클로저 클로저는 사실 자바스크립트 고유의 개념이 아니다. 함수를 일급 객체로 취급하는 함수형 프로그래밍 언어 (하스켈, 리스프, 얼랭, 스칼라 등)에서 사용되는 중요한 특성이다. MDN에서는 클로저에 대해 다음과 같이 정의하고 있다. 클로저는 함수와 그 함수가 선언된 렉시컬 환경과의 조합이다. 이것만 봐선 잘 와닿지 않는다. const x = 1; function outer() { const x = 10; function inner() { console.log(x); // 10 } inner(); } outer(); outer 함수 내부에서 중첩 함수 inner 가 정의되고 호출되었다. 이때 중첩 함수 inner의 상위 스코프는 outer의 스코프이다. 따라서 중첩 함수 inner 내부에서 자신을 포함하고 있는.. 2020. 11. 18. 이전 1 다음