5-1. 클로저 정의

<aside> 🔍 A closure is the combination of a function bundled together (enclosed) with references to its surrounding state(the lexical environment)

</aside>

⇒ 직역하면,

함수와 둘러쌓인 Lexical Environment

⇒ Lexical Environment 입장에서 해석하면,

내부함수와 LexicalEnvironment의 조합

스크린샷 2023-10-18 오후 9.02.08.png

5-2. 클로저란?

클로저는 함수의 생성과 함께 무조건 생기는 ‘당연한 개념’

클로저는 당연한 개념을 말할 때 쓰이기보다

클로저 환경에서만 발생하는 특별한 현상을 표현하기 위해 ‘클로저’ 단어를 사용함

5-3. 특별한 현상?

컨텍스트 A에서 선언한 변수를

참조하는 내부함수 B를

A의 외부로 전달할 경우,

A가 종료된 이후에도