더북(TheBook)

letconst는 선언된 블록 내에서만 존재한다. 다음은 let을 사용한 예다.

function stayContained() {
    var a = [1, 2, 3];
    for (var i = 0; i < a.length; ++i) {
        let value = a[i]; 
        console.log(value);
    }
    console.log("Outside loop " + value); // ReferenceError: 'value' is not defined
}
stayContained();

이제 value는 블록이 의미하는 대로 범위가 지정된다. 그 밖의 함수 영역에는 존재하지 않는다. 필요한 만큼만 존재하며 명백한 의도가 실제 효과와 일치한다(stayContained에서는 다른 변수를 var에서 let으로 변경하지 않았다. 값 선언을 변경하는 것이 중요하다는 사실을 강조하기 위한 것이다. 당연히 다른 변수도 변경할 수 있다).

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.