자바스크립트 엔진은 코드를 실행하면 우선 전역 실행 컨텍스트 한 칸을 생성해서 Call Stack에 넣습니다. 그 후, 전체 코드를 스캔하면서 선언할게 있는지 찾아보고, 있다면 먼서 선언해둡니다.

선언하는 과정에서 생성해둔 실행 컨텍스트 안에 있는 환경레코드 에 새로운 식별자를 기록합니다.

이렇게 본격적인 실행에 앞서 스캔하고 준비하는 단계를 생성 단계라고 합니다.

그리고 이어서 선언문 외에 나머지 코드를 순차적으로 실행하는데 이 단계를 실행 단계 라고 합니다. 필요한 경우 생성 단계에서 환경레코드에 기록해둔 정보를 참고하거나 업데이트 하게 됩니다.

선언과 초기화

var 와 let, const 의 차이

변수의 생성과정(var, let, const)

Untitled

Untitled