简要描述:
- 介绍JavaScript中的高阶函数,在 JavaScript 中,函数是一种特殊类型的对象,它们是 Function objects。将通过高阶函数的定义来展开介绍及实际中的应用
高阶函数英文叫Higher-order function。那么什么是高阶函数?
在数学和计算机科学中,高阶函数是至少满足下列一个条件的函数:
- 接受一个或多个函数作为输入
- 输出一个函数
高阶函数可以理解为输入一个函数,输出一个函数。在JS编程的时候很多时候都用过,比如Array的reduce,sort,map等方法,他们就是高阶函数。
取个简单的例子解释还原一下高阶函数
let add = function(p1){
this.value = function (p2) {
return p1+p2
}
return this.value
}
// let result = add(1)(2)
// console.log(result)
// print 3
上面这段代码的执行方式是add(1)(2),结果返回3,
这个函数的执行看起来平时的不太一样,它可以看做分解为第一次执行返回了一个函数,第二次执行才返回结果。如果我们需要连续三次相加的话,那么上面的代码就需要改写成
let add = function(p1){
this.value = function (p2) {
return (p3