호이스팅이랑 "끌어올린다"라는 뜻으로 변수 및 함수 선언문이 스코프 내의 최상단으로 끌어올려지는 현상을 말한다.
🙋🏻♂️ 대입문은 끌어올려지지 않는다
컴파일러는 자바스크립트 엔진이 인터프리팅(Interpreting)을 하기 전에 컴파일을 하는데 이 때, var a = 2; 를 2개의 구문으로 본다.
var aa = 2var a 는 변수 선언문으로 컴파일을 할 때 처리하고, a = 2 는 실행할 때까지 내버려둔다. 따라서, 변수 a는 호이스팅 되고 콘솔에는 다음과 같은 결과가 나온다.

함수 선언문의 경우도 호이스팅이 된다.

🙋🏻♂️ 함수 표현식은 호이스팅이 되지 않는다!!

🙋🏻♂️ 함수와 변수 선언문 중에는 함수 선언문이 먼저다.
