[javascript] 컨텍스트 스택(context stack)이란 무엇인가?

함수가 호출될 때마다 해당 함수의 실행 컨텍스트가 스택의 맨 위에 추가되고, 함수의 실행이 완료되면 스택에서 제거됩니다. 이러한 작업은 호출 스택(call stack)이라고도 불리며, 이것이 컨텍스트 스택의 주요한 역할입니다.

컨텍스트 스택은 변수, 매개변수, 함수 선언 등의 정보를 저장하고, 실행 순서를 관리하여 함수가 올바르게 실행될 수 있도록 지원합니다. 이를 통해 자바스크립트는 함수 호출과 실행의 순서를 제어하고, 각 함수의 작업 공간을 구분하여 충돌을 방지할 수 있습니다.

컨텍스트 스택은 자바스크립트 엔진이 함수 호출을 추적하고 실행 순서를 유지하는 데 중요한 역할을 합니다. 이를 이해하면 코드 실행과 디버깅에 도움이 됩니다.