호이스팅

김하은·2023년 5월 22일
0
const sum = function(){
let result = 10 + 10;
}

이렇게 작성하는 함수 선언 방식은 함수 표현식이라고 한다.

const sum = ()=>{
let result = 10 + 10;
}

이렇게 작성하는 함수 선언 방식은 화살표 함수라고 한다.

function sum(){
let result = 10 + 10;
}

이렇게 작성하는 함수 선언 방식을 함수 선언문이라고 한다.

그런데 함수 선언문의 경우, 호이스팅의 문제가 있다.(호이스팅의 영향을 반ㄷ게된다.)

호이스팅: 위로 끌어올림.

자바스크립트는 위에서부터 읽어내려온다.
그런데 브라우저가 자바스크립트를 해석하는 과정에서 함수 선언문은 원래 선언된 위치가 아니라 위쪽으로 끌어 올려지게 된다.
(표현식이나 화살표함수는 그렇지 않지만, 선언문의 경우 위로 끌어올려지는 것처럼 동작함)

0개의 댓글