前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >高阶函数的介绍

高阶函数的介绍

作者头像
用户9914333
发布2022-07-21 19:56:16
2910
发布2022-07-21 19:56:16
举报
文章被收录于专栏:bug收集

bug收集:专门解决与收集bug的网站

网址:www.bugshouji.com

01

高阶函数的概念

高阶函数的英文名叫 Higher-Order Function. 什么是高阶函数?高阶函数需满足以下二个条件:

1、本身是一个函数

2、参数是函数

定义:一个函数可以接收另一个函数作为参数,这种函数就称之为高阶函数

02

常用的高阶函数

map:一般用于操作数组集合,遍历操作用。

代码语言:javascript
复制
let arr = [1,2,3,4,5,6]
let newArr = arr.map(function(x){
    return x * x
})
console.log(newArr)

reduce:数组元素计算

代码语言:javascript
复制
let arr = [1,2,3,4,5]
let num = arr.reduce(function(x,y){
      return x + y
})
console.log(num) // 15

filter:筛选元素用。返回数组元素的判断(boolean)

代码语言:javascript
复制
let arr = [1,2,3,4,5]
let r = arr.filter(function(x){
     return x % 2 != 0
})

sort:数组重排序。返回同一个数组对象。根据ascii码进行排序

代码语言:javascript
复制
let arr = [5,23,7,2,4,5,6]
let newArr1=arr.sort(function(){
  return x>y //从小到大
})

03

高阶函数来源

高阶函数源自于函数式编程(不熟悉的朋友请看《javascript中的函数式编程》),是函数式编程的基本技术。

那么,JS作为一门“一切皆为对象”的语言,是如何拥有函数式编程的能力呢?

是因为在JS中函数是一等公民,即函数可以被赋值给变量,被变量引用,这便使得函数可以作为参数,在其他函数间相互传递

参考

https://www.jianshu.com/p/f019f980a50d

https://zhuanlan.zhihu.com/p/63745406

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-08-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 bug收集 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • map:一般用于操作数组集合,遍历操作用。
  • reduce:数组元素计算
  • filter:筛选元素用。返回数组元素的判断(boolean)
  • sort:数组重排序。返回同一个数组对象。根据ascii码进行排序
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档