Execution Context와 Execution Stack에 대해 간단하게 알아보자.

모든 자바스크립트 코드가 작동되는 환경을 Execution Context라 한다.

간단히 말해 Execution Context는 변수 등의 정보를 저장하고, 우리가 작성한 코드들을 계산/실행하는 저장소와 같다고 보면 된다. 

다음 코드를 참고해보자.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
var name = 'JellyBear';
 
function first(){
    var a = 'Hello!';
    second();
    var x = a + name;
}
 
function second() {
    var b = 'Hi';
    third();
    var z = b+ name;
}
 
function third(){
    var c = 'Hey!';
    var z = c + name;
}
 
first();
 
cs

첫번째 Execution Context는 전역 컨텍스트이고, 두번째는 first 함수, 세번째는 second 함수, 네번째는 third 함수이다.

이를 스택으로 쌓은것이 Execution Stack이다.

전역컨텍스트-> first -> second -> third -> (top) 순이다.

이를 third - second -first 순으로 pop해서 처리한다.

 


' > JavaScript' 카테고리의 다른 글

-JavaScript- this  (0) 2019.03.27
-JavaScript- Hoisting이란?  (0) 2019.03.22
-JavaScript- 배열(array)  (0) 2019.03.13
JavaScript 문자열 기초 사용  (0) 2019.01.24
-JavaScript- 비교연산자 '=='과 '==='의 차이  (0) 2019.01.04

+ Recent posts