Global
전역 변수와 전역 객체에 대해 알아보자.
자바스크립트에서 변수의 범위는 중첩되며 트리(tree
)를 형성한다. 가장 바깥쪽 범위는 트리의 root
이며, 해당 범위에 직접 포함된 범위는 root
의 자식이다.
Global scope
루트를 전역 범위(global scope
)라고 하며, 웹 브라우저에서 전역 범위에 직접 있는 유일한 위치는 스크립트 최상위 수준이다.
Global variables
전역 범위의 변수를 전역 변수(global variables
)라고 하며 어디서든 접근할 수 있다. 그리고 이 전역 변수에는 두 가지가 있다.
전역 선언 변수(
global declarative variables
):const
,let
,클래스 선언
을 통해 오직 최상위 수준의 스크립트에서 만들어 진다.전역 객체 변수(
global object variables
): 전역 객체(global object
)라고 불리며,var
나함수의 선언
을 통해 최상위 수준의 스크립트에서 만들어 진다.전역 객체
는전역 변수인 globalThis
를 통해 접근할 수 있다. (globalThis())그 외에
전역 객체
는 다른 일반 변수처럼 동작한다.
ECMAScript 6
에는 전역 객체를 피할 수 있도록 아래와 같은 기능이 추가됐다.
const
,let
,class 선언
은 전역 범위에서 사용될 때 전역 객체 속성을 생성하지 않는다.모듈에는 고유한 로컬 범위를 가진다.
Last updated