- 호이스팅이란 "끌어올린다" 라는 뜻
- 선언문이 스코프 내의 최상단으로 끌어올려지는 현상
변수 호이스팅
console.log(a);
var a = 2;
- 컴파일러는 Javascript 엔진이 인터프리팅을 하기 전에 컴파일을 하는데 이 때, var a = 2; 를 2개의 구문으로 해석
- var a
- a = 2
- var a는 변수 선언문으로 컴파일할 때 처리하고, a = 2는 실행할 때까지 내버려 둠
- 변수 a는 호이스팅 되고 콘솔에는 다음과 같은 결과가 표시됨
undefined;
- var는 선언, 초기화가 동시에 이루어지기 때문에 undefined를 출력
- let,const는 선언단계만 호이스팅 되기 때문에 Reference Error를 출력
함수선언문 호이스팅
func();
function func() {
console.log('함수 호이스팅');
}
console :
함수 호이스팅
- 함수표현식은 호이스팅 되지 않음
'Coding' 카테고리의 다른 글
브라우저 렌더링 원리 (0) | 2023.05.22 |
---|---|
주소창에 URL을 입력하면 일어나는 일 (0) | 2023.05.22 |
HTTP & HTTPS ( SSL,TLS ) (2) | 2020.06.22 |
eslint 자동정렬 (0) | 2019.08.09 |
Conway Sequence es6 VanillaJS (0) | 2019.08.06 |