“함수와 함수가 선언된 어휘적(lexical) 환경의 조합을 말한다. 이 환경은 클로저가 생성된 시점의 유효 범위 내에 있는 모든 지역 변수로 구성된다.” - MDN -
const adder = x => y => x + y
//위의 코드와 동일하게 작동하는 function 코드는 아래와 같다.
const adder = function (x) {
return function (y) {
return x + y;
}
}
const makeCounter = {} => {
let value = 0;
return {
increase: () => {
value = value + 1
},
decrease: () => {
value = value - 1
},
getValue: () => value
}
}
const counter1 = makeCounter();
캡슐화
라 부른다.)모듈화
라 부른다.