핵심 답변
📌 실행 컨텍스트란 JavaScript 코드가 실행될 때 생성되는 환경 정보를 담은 객체입니다.
실행 컨텍스트는 세 가지로 구성됩니다.
변수 환경(Variable Environment): var로 선언된 변수, 함수 선언문 저장
렉시컬 환경(Lexical Environment): let, const 변수, 블록 스코프 정보
this 바인딩: 현재 컨텍스트의 this 값
코드 실행 시 컨텍스트는 Call Stack에 쌓이며, 함수 호출마다 새 컨텍스트가 생성됩니다. 함수 실행이 끝나면 해당 컨텍스트는 Call Stack에서 제거됩니다.
핵심 용어
📌 전역 실행 컨텍스트(Global Execution Context)코드가 처음 실행될 때 자동으로 생성되는 최상위 컨텍스트입니다. 브라우저에서는 window 객체와 연결됩니다.
📌 함수 실행 컨텍스트(Function Execution Context)함수가 호출될 때마다 생성됩니다. 함수가 종료되면 Call Stack에서 제거됩니다.
📌 호이스팅(Hoisting)실행 컨텍스트 생성 단계에서 변수 선언과 함수 선언이 코드 최상단으로 끌어올려지는 동작입니다.