13장 스코프

13.1 스코프란?

13.2 스코프의 종류

13.3 스코프 체인

13.3.1 스코프 체인에 의한 변수 검색

13.4 함수 레벨 스코프

    var x = 1;
    if (true) {
    // var 키워드로 선언된 변수는 함수의 코드 블록(함수 몸체)만을 지역 스코프로 인정한다.
    // 함수 밖에서 var 키워드로 선언된 변수는 코드 블록 내에서 선언되었다 할지라도 모두 전역 변수다.
    // 따라서 x는 전역 변수다. 이미 선언된 전역 변수 x가 있으므로 x 변수는 중복 선언된다.
    // 이는 의도치 않게 변수 값이 변경돠는 부작용을 발생시킨다.
    var x = 10;
    }
console.log(x); // 10

13.5 렉시컬 스코프

    var x = 1;

    function foo() {
        var x = 10;
        bar();
    }
    function bar() {
        console.log(x);
    }
    foo(); // ?
    bar(); // ?

끝!