핵심 답변
"끌어올린다"는 뜻으로, 변수 및 함수 선언문이 스코프 내의 최상단으로 끌어올려지는 현상입니다.
주의할 점은 선언문만 올라가고, 대입문(할당)은 올라가지 않습니다.
예시 코드
javascript
console.log(a); // undefined (에러 아님) var a = 10; // 위 코드는 아래처럼 동작: // var a; ← 선언만 호이스팅 // console.log(a); → undefined // a = 10;
추가 정보
var: 선언과 초기화(undefined)가 함께 호이스팅let, const: 선언만 호이스팅, 초기화 전 접근 시 TDZ(Temporal Dead Zone) 오류 발생함수 선언문: 선언 + 정의 전체가 호이스팅