Javascript 호이스팅(Hoisting)이란 무엇일까?

리액트만패는젊은이·2024년 9월 25일

Javascript Cs

목록 보기
1/6
post-thumbnail

호이스팅(Hoisting)

  • 변수와 함수 선언이 컴파일 단계에서 상위로 글어올려집니다. var는 선언만 호이스팅되고 초기화는 호이스팅되지 않으며, letconst는 호이스팅되지만 초기화 전에는 사용 불가(Temporal Dead Zone)입니다.

예시 )

console.log(x); // undefined
var x = 5;
console.log(x); // 5

위 코드에서 x 변수 선언이 코드 상단으로 끌어 올려지면서, 첫번째 console.log(x)에서 undefined
가 출력된다. 이는 선언만 호이스팅되었고 초기화는 나중에 발생하기 때문이다.

반면에 letconst는 호이스팅되지만 초기화 전에는 사용 불가하여, 같은 상황에서 에러가 발생합니다.

console.log(y); // ReferenceError
let y = 5;
profile
front-end-developer

0개의 댓글