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 |