[javascript] 클로저
자바스크립트에서 클로저는 함수가 외부 스코프에 접근할 수 있도록 하는 개념입니다.
클로저의 작동 방식
클로저를 생성하려면 함수 내부에서 다른 함수를 반환해야 합니다. 이렇게 하면 반환된 함수가 외부 스코프의 변수에 접근할 수 있습니다.
예를 들어,
function outerFunction() {
let outerVariable = "I am from outer function";
function innerFunction() {
console.log(outerVariable);
}
return innerFunction;
}
const newFunction = outerFunction();
newFunction(); // "I am from outer function"
이 예제에서 innerFunction
은 외부 스코프에 있는 outerVariable
에 접근할 수 있습니다.
클로저의 활용
클로저는 콜백 함수로 사용되거나 비동기 작업에서 변수 상태를 보전할 때 유용하게 사용됩니다.
결론
클로저는 자바스크립트에서 매우 강력하고 유용한 개념으로, 함수가 외부 스코프에 접근할 수 있도록 합니다.
더 자세한 정보는 MDN web docs를 참고하세요.