실행 컨텍스트란 무엇인가?

Y39·2023년 4월 8일
0

toBeProgrammer

목록 보기
84/88

JS 실행 컨텍스트

특징: 식별자 결정을 효율적으로 하기 위함

실행 컨텍스트 과정

  1. Call Stack에 Glovbal Execution Context 쌓임
  2. 실행된 함수의 Execution Context가 쌓임

Record

  • Hoisting : 선언문이 맨위로 끌어올려진 것 같은 현상
    • JS가 미리 코드를 스캔해서 Record에 선언문을 미리 기록함
  • Varicable Hoisting
    • var
      • 생성 단계: record에 [변수명: undefined]로 저장
      • 실행 단계: 순차적으로 코드를 실행
    • let, const
      • 생성 단계: record에 [변수명: ]로 저장 → exception이 생김
  • Function Hoisting
    • 생성 단계: 선언과 동시에 생성됨

Outer: scope chaining

: 외부환경 참조 (lexical environment, 정적 환경)

  • 식별자 결정
    • 코드에서 동일한 변수명에 값을 어떻게 넣을 것인지 결정
  • global → fumction → inner function 이런식으로 서로를 참조할 수 있도록 outer 존재
profile
System.out.print("Bold")

0개의 댓글