어우 올게 왔다 실행 컨텍스트..
여기서 출발하는 많은 개념들이 초면은 아니지만
아직도 만날때마다 매번 정의를 딱 내리기 어려운것 같다.
간단하게 메모형으로 남겨놓으려고한다.
Excution Context
:: 함수를 실행할때 필요한 환경 정보를 담은 객체
:: 전역공간, 함수, module, eval
이 Excution Context의 내부를 들여다보면 아래와 같이 생겼다.
- VariableEnviroment
- enviromentRecord
- outerEnviromentReference
- LexicalEnviroment: 실행 컨텍스트를 구성하는 환경정보들을 모아 사전처럼 구성한 객체
- enviromentRecord: 현재 문맥의 식별자 정보 - 호이스팅
- outerEnviromentReference: 외부 식별자 정보 - 스코프 체인
- ThisBinding
VariableEnviroment, LexicalEnviroment는 현재 정보와 관련된 정보들이다.
VariableEnviroment는 오직 식별자 정보만의 저장. (변화 반영 안됨)
LexicalEnviroment는 각 식별자에 담긴 데이터를 추적한다. (변화 반영 됨)
'웹 프로그래밍 > 공부일지' 카테고리의 다른 글
ES6 숫자 3자리 단위 콤마 (1) | 2024.03.23 |
---|---|
[Javascript 기초] 데이터 타입 (0) | 2024.03.21 |
yarn berry에서 auto import가 안돼요 🫤 (0) | 2024.03.04 |
yarn berry 🍓 ! (0) | 2024.02.22 |
Token 로그인 구현 (feat. 보안이 너무 어려웡🤔) (0) | 2024.02.01 |