매일메일 "자바스크립트에서 어떻게 호이스팅이 가능한지에 대해서 설명해주세요."

이수용·2025년 4월 22일

매일메일

목록 보기
22/31
post-thumbnail

호이스팅이 가능한 이유? 🤔

자바스크립트 엔진은 코드를 실행하기까지 두 단계의 과정을 거친다.

1. 컴파일 단계

자바스크립트 엔진은 실행하기 전에 먼저 컴파일 단계를 거친다.
이때 함수 및 변수 선언을 한 부분이 메모리에 할당이 된다. 따라서 실제 코드에서 선언된 위치보다 앞에서 접근이 가능해진다.

var를 통해서 선언하게 되면 컴파일 단계에서 변수가 메모리에 올라가고 undefined로 초기화된다.

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

2. 실행 단계

컴파일 단계에서 메모리에 할당된 변수와 함수가 실행되는 단계이다.
이때 변수가 할당된 값을 가지게 되고 함수가 호출되면 그 안의 코드가 실행된다.

✅ 결론

호이스팅이 가능한 이유는 한 줄씩 바로 해석하는 것이 아니라 컴파일 단계에서 코드를 파악하고 먼저 메모리에 할당이 되는 과정을 거치기 때문!

0개의 댓글