[javascript] 변수의 스코프와 클로저
변수의 스코프와 클로저는 자바스크립트에서 중요한 개념입니다. 이러한 개념을 이해함으로써 코드를 더 효율적으로 작성하고 버그를 방지할 수 있습니다.
변수의 스코프
변수의 스코프는 해당 변수에 접근할 수 있는 코드 상의 영역을 의미합니다. 자바스크립트에서는 전역 스코프와 지역 스코프가 있습니다.
전역 스코프
전역 스코프에서 선언된 변수는 어디서든지 접근할 수 있습니다. 하지만 전역 변수의 남발은 코드를 복잡하고 이해하기 어렵게 만들 수 있으므로 되도록 사용을 피하는 것이 좋습니다.
let globalVar = 10;
function doSomething() {
console.log(globalVar);
}
지역 스코프
지역 스코프에서 선언된 변수는 해당 블록 내에서만 접근할 수 있습니다.
function doSomething() {
let localVar = 20;
console.log(localVar);
}
클로저
클로저는 내부 함수가 외부 스코프에 접근할 수 있는 메커니즘을 말합니다. 이를 통해 외부 스코프에 있는 변수를 계속해서 참조할 수 있습니다.
function outerFunction() {
let outerVar = 30;
function innerFunction() {
console.log(outerVar);
}
return innerFunction;
}
let foo = outerFunction();
foo(); // 30 출력
클로저를 올바르게 이해하고 활용하면 더 효율적이고 안전한 코드를 작성할 수 있습니다.
변수의 스코프와 클로저는 자바스크립트에서 중요한 개념이므로 꼭 이해하고 숙지하는 것이 좋습니다.