음악, 삶, 개발
Function Expression vs Function Declaration 본문
< 참고 강좌 : youtu.be/e_lU39U-5bQ >
JS 에서 함수를 작성하는 방식은 2가지가 있다.
const f1 = () => { console.log('expression!')}
function f2() { console.log('declaration!')}
f1()
f2()
이 둘의 중요한 차이점은,
function delcaration 은 호이스팅 (뒤에 선언한 함수를 끌어올려 호출) 이 되지만,
function expression 은 호이스팅이 되지않는다.
const f1 = () => { console.log('f1!')}
f2()
const f2 = () => { console.log('f2')}
// Error : Cannot access 'f2' before initialization
function f1() { console.log('f1!')}
f2() // f2 출력
function f2() { console.log('f2')}