Javascript
16. 고차함수
연쥬개발쟈
2020. 9. 26. 14:29
함수
-변수에 할달 할 수있다.
-다른 함수의 인자로 전달 될 수 있다.
-다른 함수의 결과로서 리턴 될 수 있다.
고차함수란 ?
함수를 인자로 받거나 함수를 리턴하는 함수를 말한다.
콜백함수란?
다른함수의 인자로 전달되는 함수 이다.
1. 다른함수를 인자로 받는 경우
function double(num){//콜백함수
return num * 2;
}
function doubleNum(func, num){ //고차함수
let doubledArr = [];
return func(num);
}
doubleNum(double,4); // 함수 호출
2. 함수를 리턴하는 경우
function adder(added) { //고차함수 (익명의 함수를 사용중)
return function (num) {//익명의 함수
return num + added ;
};
}
adder(5)(3); // 8
const add3 = adder(3);
add3(2) // 5
3. 함수를 인자로 받고 함수를 리턴하는 경우
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