• 2021. 10. 6.

    by. 문익점

    반응형

    Scope

    Scope의 뜻은 범위입니다. 그렇다면 javascript에서 scope는 어떤 범위를 의미 할까요? 바로 변수에 접근할 수 있는 범위입니다. 즉 변수가 유효성을 갖는 영역을 가리킵니다.

    전역 스코프와 지역 스코프

    자바스크립트에서 스코프의 종류는 2가지입니다. 전역(Global) 스코프지역(Local) 스코프입니다.

    전역(Global) 스코프

    스코프는 변수가 유효성을 갖는 영역이라고 했습니다. 그렇다면 "전역" 스코프라는건 말 그대로 전역에 선언 되어 있기 때문에 어느 곳에서든지 변수에 접근 할 수 있습니다.

    지역(Local) 스코프

    지역 스코프라면 당연히 해당 지역에서만 접근할 수 있어 지역을 벗어난 곳에선 접근할 수 없다는 의미입니다..

    아래의 예제를 통해 더 자세하게 구분해보겠습니다.

    let temp = 33;
    function say() {
    let hello = "hello"
    console.log(hello); // hello는 지역 스코프에 속해있어 밖에서 접근 가능!
    }
    say();
    console.log(temp); // temp는 전역 스코프에 속해있어 밖에서 접근 가능!
    console.log(hello); // hello는 지역 스코프에 속해있어 밖에서 접근 불가!

    스코프는 {}(블록)로 구분된다

    function print() { // 함수 블록
    console.log(a);
    }
    { // 블록
    const a = '1';
    }

    블록(block)이란 중괄호로 둘러싸인 부분을 블록이라고 합니다.

    반응형