개발_JavaScript
JavaScript 에서의 호출 Stack(Call Stack)
swdream
2019. 4. 30. 17:11
반응형
먼저 Call Stack이란 무엇인가?
Script상에서 (프로그래밍 언어가 쓰여있는) 함수(Function)이 차례대로 호출될 때
이 함수들을 받아서 작동하는 메커니즘임.
마치 Stack처럼 LIFO구조로 함수들이 Stack 자료구조상에 쌓여서 제일 마지막에 Call 된 Function이 실행되도록 작동한다.
function first(){
second();
console.log("First");
}
function second(){
third();
console.log("Second");
}
function third(){
console.log("Third");
}
first();
즉, 위와 같은 코드를 Console 에 입력하면 아래와 같이 Third -> Second -> First 순으로 출력된다.
함수를 위에서부터 실행하면서 자료구조 Stack 에 쌓아두면서 작동하기 때문이다.(LIFO 방식으로 작동)
즉, Stack 상으로
{1. first , 2. second, 3. third. 4. console.log} 이며, 마지막으로 들어온 Console log 부터 Console상에서 실행된다고 볼 수 있음
반응형