소스코드 타입 | 설명 |
---|---|
전역 코드 | 전역에 존재하는 소드코드, 전역에 정의된 함수, 클래스 등의 내부 코드는 포함 X |
함수 코드 | 함수 내부에 존재하는 소스코드, 함수 내부에 중첩된 함수, 클래스 등의 내부 코드는 포함 X |
eval 코드 | 빌트인 전역 함수인 eval 함수에 인수로 전달되어 실행되는 소스코드 |
모듈 코드 | 모듈 내부에 존재하는 소스코드, 모듈 내부의 함수, 클래스 내의 내부 코드는 포함 X |
전역 코드
함수 코드
eval 코드
모듈 코드
렉시컬 환경(Lexical Environment)
렉시컬 환경의 구성 컴포넌트
BindingObject
변수 호이스팅이 발생하는 원인
함수 호이스팅
전역 코드가 순차적으로 실행됨
변수 할당문 또는 함수 호출문을 실행하려면 먼저 변수 또는 함수 이름이 선언된 식별자인지 확인해야 함
스코프 체인의 동작 원리