404 page not found : 기록장

[Modern Javascript deep dive] 변수 선언 실행 시점과 변수 호이스팅 본문

JAVASCRIPT

[Modern Javascript deep dive] 변수 선언 실행 시점과 변수 호이스팅

Hannah_J 2023. 2. 11. 23:28
console.log(score); //undefined

var scroe; // 변수 선언

 자바스크립트 코드는 인터프리터에 의한 한 줄씩 순차적으로 실행된다.

 - 인터프리터

    프로그래밍 언어의 소스코드를 바로 실행하는 컴퓨터 프로그램 또는 환경

 

자바스크립트 엔진은 소스코드를  한 줄씩 순차적으로 실행하기에 앞서 먼저 소스코드 평가 과정을 거치면서 소스코드를 실행하기 위한 준비를 하는데, 자바스크립트 엔진은 변수 선언을 포함한 모든 선언문 (변수 선언문, 함수 선언문 등)을 소스코드에서 찾아내 먼저 실행한다.

 

변수 선언문이 코드의 선두로 끌어 올려진 것처럼 동작하는 자바스크립트 고유의 특징을 변수 호이스팅 이라 한다.

변수 선언 뿐만 아니라 var, let, const ,function, class 키워드를 사용해서 선언하는 모든 식별자 (변수, 함수, 클래스 등)는 호이스팅 된다.

 

*가끔 인터넷에서 let const는 호이스팅이 되지 않는다는 이야기가 있지만 let const도 호이스팅이 된다.*

'JAVASCRIPT' 카테고리의 다른 글

[Javascript] 자료형  (0) 2023.03.13
[Javascript] Prototype  (0) 2023.03.10
Callback Hell  (0) 2023.03.07
[Modern Javascript deep dive] 식별자  (0) 2023.02.11
[Modern Javascript deep dive] 변수  (0) 2023.02.11