1) 변수에 할당(assignment) 할 수 있다.
함수 표현식: 함수 표현식은 호이스팅이 적용되지 않는다.
const square = function (num) {
return num * num;
};
output = square(7);
console.log(output); // --> 49
2) 다른 함수의 인자(argument)로 전달될 수 있다.
3) 다른 함수의 결과로서 리턴될 수 있다.
고차 함수(higher order function)는 함수를 인자(argument)로 받을 수 있고, 함수의 형태로 리턴할 수 있는 함수이다.
콜백 함수(callback function)는 다른 함수(caller)의 인자(argument)로 전달되는 함수이다.