본문 바로가기

개발/Javascript

Javascript Hoisting(호이스팅)

Hoisting(호이스팅) 이란?

함수 안에 있는 선언들을 모두 끌어올려서 해당 함수 유효범위의 최상단에 선언하는 것  
변수의 경우 var로 선언한 변수만 호이스팅이 적용된다. (let, const 변수는 적용되지 않음)

 

예시

적용 전

console.log("hello");
var myname = "KIM";
let myname = "KIM222";

 

적용 후

var myname;
console.log("hello");
myname = "KIM";
let myname = "KIM222";

 

 

Hoisting 함수 적용

함수의 선언문은 적용되나, 표현식은 적용되지 않는다.

 

적용 전

foo();
foo2();

function foo() {
    console.log("TEST");
}

var foo2 = function() {
    console.log("TEST2");
}

 

적용 후

var foo2;
function foo() {
    console.log("TEST");
}

foo();
foo2();     // ERROR!!!

foo2 = function() {
    console.log("TEST2");
}

 

 

Hoisting 우선순위

변수 선언문이 함수 선언문보다 위로 끌어올려진다.

'개발 > Javascript' 카테고리의 다른 글

Vite + React + tailwind CSS  (0) 2024.12.03
NPM 배포하기  (0) 2024.04.14
Javascript Closure (클로저)  (0) 2024.04.09
Webpack(웹팩) 설정하는 법  (0) 2024.04.08