- 일급 객체(first-class citizen)의 세 가지 특징을 설명할 수 있다.
- 고차 함수(higher-order function)에 대해 설명할 수 있다.
다른 함수를 인자로 받는 경우
function double(num) {
return num * 2;
}
function doubleNum(func, num) {
let doubledArr = [];
return func(num);
}
let output = doubleNum(double, 4);
console.log(output); // -> 8
function adder(added) { // 1.(5)들어오면
return function (num) { // 3.(3)들어오면
return num + added; //2.(5)값 저장, 4.(3)값 연산하여 리턴.
};
}
let output = adder(5)(3); // -> 8
console.log(output); // -> 8
function double(num) {
return num * 2;
}
function doubleAdder(added, func) {
const doubled = func(added);
return function (num) {
return num + doubled;
};
}
doubleAdder(5, double)(3); // -> 13