목차
반응형
스코프
스코프는 자바스크립트에서 스코프(scope)는 변수와 함수의 유효 범위를 결정한다.
즉, 변수나 함수가 어디에서부터 접근 가능한지를 결정하는 것이다.
전역 스코프(Global Scope)
전역 스코프는 어떤 함수나 블록에도 속하지 않는 최상위 스코프다.
전역 스코프에서 선언된 변수와 함수는 어디서든 접근이 가능하다.
const globalVar = 'global variable'; // 전역 스코프에서 선언된 변수
function globalFunction() { // 전역 스코프에서 선언된 함수
console.log(globalVar); // 'global variable' 출력
}
globalFunction();
지역 스코프(Local Scope)
지역 스코프는 특정 함수나 블록 내부에서 선언된 변수와 함수가 유효한 범위다.
지역 스코프 내부에서 선언된 변수와 함수는 해당 지역 스코프 내부에서만 접근이 가능하다.
function localFunction() { // 지역 스코프에서 선언된 함수
const localVar = 'local variable'; // 지역 스코프에서 선언된 변수
console.log(localVar); // 'local variable' 출력
}
localFunction();
console.log(localVar); // ReferenceError: localVar is not defined
블록 스코프(Block Scope)
let과 const를 사용하여 블록 스코프(block scope)를 생성할 수 있다.
블록 스코프는 중괄호({})로 묶인 코드 블록 내부에서만 유효한 범위를 가진다.
{
let blockVar = 'block variable'; // 블록 스코프에서 선언된 변수
console.log(blockVar); // 'block variable' 출력
}
console.log(blockVar); // ReferenceError: blockVar is not defined
반응형