출처: 모던 자바스크립트 딥다이브
모든 프로그래밍 언어의 기본개념, 자바스크립트 스코프는 타 언어와 다른점이 있음
var, let , const 변수의 스코프가 다르게 동작함
모든 식별자는 ‘자신이 선언된 위치에 의해’ 다른 코드가 식별자 자신을 참조할 수 있는
유효 범위가 결정됨, 이 범위를 스코프라고 함
요약 → 스코프는 식별자가 유효한 범위이다. 범위는 선언된 위치에서 결정된
var x = 'global'
function foo() {
var x = 'local'
console.log(x);
}
foo();
console.log(x);
문제 2. 위 그림에서 자바스크립트 엔진이 되어서 위 코드 실행 시 의 작업을 편하게 설명해 주세요