몽땅뚝딱 개발자

[Javascript] 실행 콘텍스트(Execution Context) 본문

Development/Javascript

[Javascript] 실행 콘텍스트(Execution Context)

레오나르도 다빈츠 2021. 7. 7. 21:07

출처

 

자바스크립트 중고급: 근본 핵심 이해 - 인프런 | 강의

4개 강좌로 구성된 자바스크립트 바이블 강좌의 2번째 강좌입니다. 자바스크립트 엔진 이해를 통해 자바스크립트에 최적화된 프로그램을 개발할 수 있습니다. 자신 있게 시스템을 설계할 수 있

www.inflearn.com

 

 


 

🚀 실행 콘텍스트(Execution Context)

 

◽ 실행 콘텍스트란?
함수가 실행되는 영역, 묶음으로 함수 코드를 실행하고 실행 결과를 저장한다.
함수를 호출하면 엔진은 실행 콘텍스트를 생성하고 그 안으로 이동한다.


◽ 실행 콘텍스트의 실행 단계
준비 단계 - 초기화 단계 - 코드 실행 단계


◽ 실행 콘텍스트의 생성 시점
실행 가능한 코드(함수 코드, 글로벌 코드, eval 코드)를 만났을 때 이다.
코드 유형을 3가지로 분리한 이유는 실행 콘텍스트에서 처리 방법과 실행 환경이 다르기 때문이다.

- 함수 코드: 정적 환경
- 클로벌 코드: 글로벌 환경
- eval 환경: 동적 환경


◽ 실행 콘텍스트 상태 컴포넌트
실행 콘텍스트 상태를 위한 오브젝트는 실행 콘텍스트안에 생성한다.
형태는 아래와 같은데, 결국 propertie로 저장되기때문에 object로 만든다.

실행 콘텍스트(EC): {
    렉시컬 환경 컴포넌트(LEC): {},
    변수 환경 컴포넌트(VEC): {},
    this 바인딩 컴포넌트(TBC): {}
}

 

 

Comments