var와 let 스코프
MDX 예제의 핵심은 `if`와 `for` 안에서 만든 이름이 어디까지 살아 있는지, 그리고 선언 전에 읽었을 때 어떤 오류가 드러나는지입니다.
블록 밖에서도 보일 수 있음
if (true) { var x = 10; } console.log(x); // 10 함수 안에서 선언했다면 함수가 경계가 되고, 함수 밖 전역에서 선언했다…
선언된 블록 안에서만 유효
for (let i = 0; i < 3; i++) { console.log(i); } // console.log(i); ReferenceError 블록 안에서 필요…
`let`은 선언 전 사용을 오류로 막습니다
`var`는 선언 전에 읽으면 `undefined`가 나올 수 있지만, `let`은 초기화되기 전 구간에서 접근하면 `ReferenceError`가 발생합니다.
핵심var와 let 스코프은 각 요소의 관계와 선택 조건을 함께 읽어야 한다.