JavaScript高阶函数
什么是高阶函数
如果一个函数以另一个函数作为参数,那么这样的函数就是高阶函数。
高阶函数例子
filter函数就是一个高阶函数,filter中的回调(参数)函数有一个要求:必须返回一个布尔值,当返回true时,函数内部会自动将这次回调函数的参数加入到新的数组中,当返回false时,函数内部会过滤掉这次的参数。
let nums
= [10, 90, 74, 100, 150, 1000, 983];
let result
= nums
.filter(function (n
) {
if (n
> 100) {
return true;
} else {
return false;
}
})
console
.log(result
);
可以看到成功地返回了所有大于100的值。它的执行过程如下: 对于nums数组的每一个元素都会被传递到形参n中,然后进行判断,如果大于100就被添加到数组result中,否则不添加。
参考
高阶函数