728x90
실행 컨텍스트 (Execution context)
- 실행 컨텍스트 혹은 실행 맥락은, 자바스크립트 코드가 실행되는 환경.
- 코드에서 참조하는 변수, 객체(함수 포함), this 등에 대한 레퍼런스가 있다.
- 실행 컨텍스트는 전역에서 시작해, 함수가 호출될 때 스택에 쌓이게 된다.
실행 컨텍스트 스택
let a = 10
function f1() {
let b = 20
function print(v) { console.log(v) }
function f2() {
let c = 30
print(a + b + c)
}
f2()
}
f1()
- print 실행 컨텍스트 : v
- f2 실행 컨텍스트 : c
- f1 실행 컨텍스트 : b, print, f2
- global 실행 컨텍스트 : a, console, f1
호출되는 순서대로 (print -> f2 -> f1 -> gloabl)
call stack에서 위에서부터 제거가 된다.
전역 실행 컨텍스트, 함수 실행 컨텍스트
- 자바스크립트가 실행될 때 전역 실행 컨텍스트 (Global Execution Context) 가 만들어진다.
- 함수가 실행될 때 함수 실행 컨텍스트 (Function Execution Context) 가 만들어진다.
728x90
반응형
'Front-End' 카테고리의 다른 글
[JavaScript] 화살표 함수 / 일반 함수 에서의 this (0) | 2023.03.23 |
---|---|
[JavaScript] this가 가리키는 것 (0) | 2023.03.22 |
[JavaScript] 자바스크립트 함수가 실행되는 과정 (0) | 2023.03.21 |
[JavaScript] 내비게이션 기능, 이미지 슬라이드, 탭 버튼 (0) | 2023.03.10 |
[JavaScript] innerHTML, innerText, textContent 차이점 (0) | 2023.03.10 |