JavaScript

[ JavaScript ] 함수 표현식과 함수 선언식

만두맨두 2023. 10. 16. 18:03

1. 함수 선언식

평소에 많이 볼 수 있는 기본적인 함수의 형태를 "함수 선언식"이라고 부릅니다.

아래의 코드를 보면 더 와닿을 거예요 !

function testFunc() {
	return '함수 선언식입니다';
}

testFunc() // 함수 선언식입니다

 

2. 함수 표현식

"함수 표현식"함수가 변수에 저장되는 형태를 가지고 있어요.

const testFunc = function() {
	return '함수 표현식입니다';
}

testFunc() // 함수 표현식입니다

 

 

 

그렇다면, 선언식과 표현식이 따로 있는 이유가 무엇일까요 ?

 

3. 함수 선언식 vs 함수 표현식

1) 호이스팅

함수 선언식과 함수 표현식의 가장 큰 차이는 호이스팅 영향의 유무입니다.

함수 선언식은 제대로 콘솔이 찍히는 반면, 함수 표현식은 찍히지 않고 있습니다.

즉, 함수 선언식은 호이스팅의 영향을 받고, 함수 표현식은 호이스팅의 영향을 받지 않아요 !

 

( 작성 중 ... )