호이스팅에서 차이가 있음
이름이 있는 함수
JS 엔진이 코드를 실행하기 전에 메모리에 로드하기 때문에 호이스팅이 발생
즉, 함수 선언식으로 정의된 함수는 코드 내 어디서든 호출 가능
console.log(add(2,3)); //5
function add(a,b) {
return a + b;
}
변수에 익명 함수를 할당하는 방식
할당된 변수명으로 호출할 수 있음
다만 호이스팅되지 않으며 변수 할당된 이후 호출 가능
console.log(multiply(2, 3)); // not defined 에러 발생
const multiply = function (a, b) {
return a * b;
};
내가 자주 쓰는게 표현식이라고 기억해두자