함수 선언문과 함수 표현식에서 호이스팅 방식의 차이??

hipAn·2022년 9월 23일
0

끄적끄적 성장일지

목록 보기
12/30

함수 선언문과 함수 표현식에서 호이스팅이 어떤 차이점을 가지고 작동하는지 한번 간략하게 살펴보자.

함수 선언문과 함수 표현식은 보기쉽게 예로 보자면

function a (b,c){
return b+c
}
이게 함수 선언문이다.

const 알랑 = function(b,c){
return b+c
}
이게 함수 표현식이다.

함수 선언문은 함수를 선언 만 한거!
함수 표현식은 함수를 만들어서 변수에 할당한거!

잊지말자.!

여기서 함수 선언문은 호이스팅되어 선언만 해 두어도

윗줄에서 호출하면 컨텍스트에서 불러다가 실행을 시켜준다.

그런데 함수 표현식은 그렇지않다. 선언을 하면 선언부에서만 호이스팅을 하게 된다.

즉 함수 선언문은 어디에 해도 컨텍스트 내부에서 위에있건 아래있건 호이스팅되어 호출하면 즉시 사용가능하고,
함수 표현식은 변수에 할당전에 호출하면 오류가 발생합니다.

저는 복잡하니까 당분간 함수 선언문만 사용하는걸로

0개의 댓글

Powered by GraphCDN, the GraphQL CDN