高阶函数
2019-04-18 本文已影响0人
Kevin丶CK
JavaScript的函数可以赋值给某个变量。
let mFunc = function(){
return 'Hello World!';
}
既然变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数或者返回另一个函数昨晚返回参数,这种函数就称之为高阶函数。
1、参数为函数的高阶函数
function add(x, y, f) {
return f(x) + f(y);
}
let funcParam = function (param) {
return param + 1;
};
console.log(add(2, 4, funcParam));//8
2、返回值为函数的高阶函数
function add(x, y) {
return function () {
return x * y;
};
}
let newFunc = add(2, 4);
console.log(newFunc());//8
我们所熟悉的数组的Map、reduce、sort等方法,都是高阶函数。