<aside> 📌

자바스크립트의 함수는 객체 타입의 값이다.

이처럼 값의 성질을 갖는 객체를 “일급 객체”라고 한다.

</aside>

const name = function(){ }

vs

function name(){ }

✏️함수 객체를 가리키는 식별자 사용하기

var add = function plus(x, y) {
	return x + y;
};
console.log(add(2, 5));

함수를 호출할 때는 함수 이름이 아니라 함수 객체를 가리키는 식별자를 사용해야한다.

✏함수도 객체이기 때문에, 변수에 할당 또는 재할당이 가능하다.

✏function의 메모리 쎌이 변수 add에 할당된다.

let add = function (a, b) {
  return a + b;
};
console.log(add(1, 2));

✏무명함수

let add = function sum(a, b){
	return a + b;
};
console.log(sum(1, 2));

🍯 함수 표현식에서는 무명함수로 사용하는 것이 좋다.

이름을 사용해도 변수에 할당되면, 변수의 이름으로 함수가 호출될뿐, 함수의 이름은 쓰이지 않는다.

📌화살표함수