高阶函数
原文链接:https://note.noxussj.top/?source=sifo
什么是高阶函数?
有两种状况都能够被定义为高阶函数,第一种是把函数作为参数传递给另外一个函数,第二种是把函数作为另一个函数的返回后果。就像咱们平时调用函数,个别都是传递值类型或者对象和数组等参数,或者是函数返回后果是值类型或者是对象和数组,高阶函数就是把下面提到的值类型、对象、数组改为函数。
长处
函数作为参数,能够使咱们这个函数变得更灵便
应用高阶函数的意义
形象(封装)能够帮咱们屏蔽细节,只须要关注与咱们要实现的指标
高阶函数是用来形象通用的问题
能够简化咱们的代码
ES5、ES6 中罕用的高阶函数
- forEach
- map
- filter
- every
- some
- find
- findIndex
- reduce
- sort
根底案例
面向对象形式
const array = [1, 2, 3, 4];
for (let i = 0; i < array.length; i++) {console.log(array[i]);
}
高阶函数形式
// 形象循环性能
function forEach(array, fn) {for (let i = 0; i < array.length; i++) {fn(array[i]);
}
}
// 定义数据
const arr = [1, 3, 4, 7, 8];
// 调用函数,传入函数作为参数
forEach(arr, (item) => {console.log(item);
});
原文链接:https://note.noxussj.top/?source=sifo