개발/Javascript

[You don't know JS] Part2 - 2장. 함수 vs 블록 스코프

lanace 2020. 9. 6. 06:36

변수나 함수는 규칙에 맞게 스코프에 포함되게 된다.

스코프의 종류는 2가지인데, 각각 함수 기반 스코프와 블록 기반 스코프이다.

각각을 알아보자

3.1 함수 기반 스코프


일반적으로 javascript 는 대부분 함수 기반의 스코프를 따른다.

function foo(a) {
    var b = 2;

    function bar() {
        // do something...;
    }

    var c = 3;
}

3.2 일반 스코프에 숨기


3.2.1 충돌 회피

function foo() {

    function bar(a) {
        i = 3;
        console.log(a + i)
    }

    for (var i = 0; i < 10; i++) {
        bar(i * 2);
    }

}

foo();

글로벌 네임스페이스

모듈 관리

3.3 스코프 역할을 하는 함수


3.4 스코프 역할을 하는 블록


3.5 정리하기