Private/면접
프론트엔드 면접(실행컨텍스트, 스코프 체인)
TERRY✨
2024. 11. 11. 19:59
1. 실행컨텍스트에 대해 설명해주세요.
실행컨텍스트는 자바스크립트에서 코드가 실행되는 환경을 의미합니다. 함수와 같이 자바스크립트 엔진이 코드를 실행할 때, 그 코드가 실행될 때의 환경을 정의하고 관리하기 위해 실행컨텍스트가 존재합니다.
실행컨텍스트는 자바스크립트가 처음 실행될 때 전역으로 먼저 생성되고, 함수가 호출될 때 역시 생성됩니다. 이러한 실행 컨텍스트는 생성될 때 콜스택에 쌓이게되며 함수가 종료되거나 프로그램이 종료될 때 사라지게 됩니다.
2. 실행컨텍스트는 어떤 구성 요소로 이루어져 있나요?
실행컨텍스트는 변수 객체와 스코프체인, this 로 구성되어 있습니다.
먼저 변수 객체는 실행 컨텍스트 내에서 사용되는 변수와 함수의 선언을 저장하는 공간입니다.
스코프 체인은 현재 실행 중인 컨텍스트와 외부 렉시컬 환경의 연결을 유지합니다. 따라서 변수를 참조할 때 현재 실행컨텍스트에서 찾지 못하면 스코프 체인을 통해 외부 환경에서 변수를 찾을 수 있습니다.
마지막으로 this는 실행 컨텍스트에 따라 참조하는 객체가 달라집니다.
이러한 구성 요소들을 통해 코드가 실행되는 동안의 환경을 관리하고 코드를 실행할 때 변수의 유효 범위나 함수 호출의 맥락을 결정 지을 수 있습니다.