[자바스크립트] 실행 컨텍스트

Kate·2023년 4월 3일
0

자바스크립트

목록 보기
17/19
post-thumbnail

소스코드의 타입

  • 전역코드 : 전역 변수를 관리하기 위해 최상위 스코프인 전역 스코프 생성
  • 함수코드 : 지역 스코프를 생성하고 지역 변수, 매개 변수, arguemnt 객체 관리
  • eval 코드 : strict mode에서 독자적인 스코프를 생성
  • 모듈 코드 : 모듈별 독립적인 모듈 스코프를 생성

소스코드의 평가와 실행


1. 소스코드의 평가 : 실행 컨텍스트를 생성, 변수, 함수 등의 선언문만 먼저 실행하여 생성된 변수나 함수 식별자를 키로 실행 컨텍스트가 관리하는 스코프(렉시컬 환경의 환경 레코드)에 등록
2. 소스코드의 실행 : 런타임 시작, 소스코드 실행에 필요한 정보를 검색해서 취득

실행 컨텍스트

  • 소스코드를 실행하는데 필요한 환경을 제공하고 코드의 실행 결과를 실제로 관리하는 영역
  • 식별자를 등록하고 관리하는 스코프와 코드 실행 순서 관리를 구현한 내부 매커니즘으로 모든 코드는 실행 컨텍스트를 통해 실행되고 관리됨

실행 컨텍스트의 역할

  1. 전역 코드 평가
  2. 전역 코드 실행
  3. 함수 코드 평가
  4. 함수 코드 실행

실행 컨텍스트 스택

  1. 전역 코드 평가와 실행
  2. foo 함수 코드의 평가와 실행
  3. bar 함수 코드의 평가와 실행
  4. foo 함수 코드로 복귀
  5. 전역 코드로 복귀

렉시컬 환경

렉시컬 환경 : 식별자와 식별자에 바인딩된 값, 상위 스코프에 대한 참조를 기록하는 자료 구조, 실행 컨텍스트를 구성하는 컴포넌트

  • 키와 값을 갖는 객체 형태의 스코프를 생성하여 식별자를 키로 등록하고 식별자에 바읹딩된 값을 관리
  • 두 개의 컴포넌트로 구성 : 환경 레코드, 외부 렉시컬 환경에 대한 참조
profile
개발 공부하는 케이트입니다.

0개의 댓글