Post

실행 문맥(실행 컨텍스트)

실행 문맥(실행 컨텍스트)

면접fe

실행 문맥(실행 컨텍스트)

실행 컨텍스트는 자바스크립트 코드가 실행되기 위해 필요한 환경을 제공하는 객체다.

  • 이 실행 컨텍스트를 콜 스택에 쌓아서, 가장 위에 쌓여 있는 컨텍스트와 관련 있는 코드를 실행한다.
  • 이 방식으로, 코드의 환경과 순서를 보장한다.



실행 컨텍스트의 Lexical Environment

Image

  • RECORD: 선언부분(식별자)을 기록함.
    현재 범위의 식별자해당 값을 관리
    → (var로 선언된 식별자는 선언시, undefined의 값으로 초기화됨)

  • OUTER: 상위 스코프의 참조
    아래에 쌓여있는 실행 컨텍스트(상위 스코프)의 연결통로
    선언된 값을 외부에서 찾을 때 사용



실행 컨텍스트의 호출 과정

실행 컨텍스트는 크게 2가지로 나뉜다.

  • 전역 실행 컨텍스트: 고유한 한 개의 실행 컨텍스트
  • 함수 실행 컨텍스트: 함수가 실행될 때 마다 생기는 컨텍스트

다음과 같이 2개의 함수를 실행한다고 하자.

  1. 전역 실행 컨텍스트 생성과 첫번째 함수 실행 컨텍스트가 실행되고 사라진다.
    Image

  2. 두번째 함수도 호출 시, 실행 컨텍스트가 실행되고 사라진다.
    Image

  3. 생성되었던 전역 실행 컨텍스트도 실행되어 사라진다.
    Image



✨ 출처

blog, 프론트엔드 면접 문제 은행


This post is licensed under CC BY 4.0 by the author.