iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >Javascript 常见的高阶函数详情
  • 459
分享到

Javascript 常见的高阶函数详情

2024-04-02 19:04:59 459人浏览 安东尼
摘要

目录一、常见的高阶函数1.1、filter1.2、map1.3、reduce高阶函数,英文叫 Higher Order function。一个函数可以接收另外一个函数作为参数,这种函

高阶函数,英文叫 Higher Order function。一个函数可以接收另外一个函数作为参数,这种函数就叫做高阶函数。

示例:


function add(x, y, f) {
 return f(x) + f(y);
}

//用代码验证一下:
add(-5, 6, Math.abs); // 11

一、常见的高阶函数

es6数组新增了几种方法,其中 mapreducefilter 几个都是高阶函数,除此,普通的sort也是高阶函数。分别介绍下新增的三个方法。

1.1、filter

filter 是过滤数组,返回满足条件的数据,组成一个新的数组返回,不满足条件的被丢弃。

实例1:取出数组中小于 100 的数据,放到一个新数组中


let grad = [ 102, 188, 55, 66, 200, 800 ]
let arr2 = grad.filter( function(item){
 return item <= 100
})
console.log("arr2",arr2)// 55, 66

上述实例中,filter传入的参数是一个函数,传入的函数依次作用于每个元素,然后根据返回值是 true false 决定保留还是丢弃元素。因为只有 55 66 两个满足条件,所以新的数组中只有这两个元素。

1.2、map

map 是映射的意思。

原数组被映射成一个新的数组,返回值是一个新数组,不改变原来的数组。新的数组与原数组的长度是不会改变的。

实例2:给数据每个元素放大 2 倍。


let arr2 = [ 55, 66 ]
let arr3 = arr2.map( item => {
 return item*2
})
//返回结果 [ 110, 132 ]

上述实例,map接收的参数是一个函数,该函数依次作用于每个元素,对元素放大了2倍,也可以对其进行任意的复杂操作。

1.3、reduce

reduce 是对数组进行汇总的,往往进去一个数组,出来是一个数据。经常用于求和和计算平均值。

实例3:对上个实例返回的结果进行求和。


let sum = arr3.reduce((tmp,item)=>{
 return tmp+item
})
//返回结果 242

重点来了,如果我们想把上边三个实例合并到一起执行,最终我们可以写得有多简单呢?

负责写法:


// 复杂写法
let grad = [102,188,55,66,200,800]
let arr2 = grad.filter(function(item){
 return item <= 100
})
let arr3 = arr2.map(item=>{
 return item*2
})
let sum = arr3.reduce((tmp,item)=>{
 return tmp+item
})

简单写法:


//简单写法
let sum2 = grad
           .filter( item => {return item <= 100})
          .map(item=>{return item*2})
          .reduce((tmp,item)=>{return tmp+item})

到此这篇关于javascript 常见的高阶函数详情的文章就介绍到这了,更多相关Javascript 常见的高阶函数内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Javascript 常见的高阶函数详情

本文链接: https://www.lsjlt.com/news/136995.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Javascript 常见的高阶函数详情
    目录一、常见的高阶函数1.1、filter1.2、map1.3、reduce高阶函数,英文叫 Higher Order function。一个函数可以接收另外一个函数作为参数,这种函...
    99+
    2024-04-02
  • JavaScript中常见的高阶函数总结
    目录前言map函数reduce函数filter函数sortevery方法find方法findIndex方法foreach方法总结前言 一个函数可以接受另一个函数作为参数,就把这个函数...
    99+
    2024-04-02
  • Python常见内置高阶函数即高阶函数用法
    目录1.什么是高阶函数?2.高阶函数-map、filter、reduce2.1map函数2.2filter函数2.3reduce函数1.什么是高阶函数?   高阶函数:一个函数可...
    99+
    2024-04-02
  • Python常见内置高阶函数有哪些
    这篇文章给大家分享的是有关Python常见内置高阶函数有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.什么是高阶函数?  高阶函数:一个函数可以作为参数传给另外一个函数,或者一个函数的返回值为另外一个函数...
    99+
    2023-06-21
  • JavaScript高阶函数怎么用
    本篇内容主要讲解“JavaScript高阶函数怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JavaScript高阶函数怎么用”吧! 数组方法 高阶函...
    99+
    2024-04-02
  • JavaScript数组对象高阶函数reduce的妙用详解
    目录reduce 是 JavaScript 数组对象上的一个高阶函数计算数组的平均数求数组的最大值求数组的最小值数组去重计算数组中每个元素出现的次数实现数组分组计算数组中连续递增数字...
    99+
    2023-05-16
    JavaScript数组对象reduce JavaScript高阶函数reduce
  • javascript高阶函数指的是什么
    这篇文章主要介绍了javascript高阶函数指的是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。说明可以将函数作为参数传递给另一个函数。将函数作为另一个函数的返回结果。...
    99+
    2023-06-20
  • javascript之函数进阶详解
    目录函数定义方式函数的调用(6种)this指向问题严格模式高阶函数闭包递归:函数里面调用自己,需要有结束条件函数定义方式 function fn(){}//命名函数 var ...
    99+
    2024-04-02
  • 常用的python高阶函数有哪些
    常用的Python高阶函数包括:1. map(function, iterable):对可迭代对象中的每个元素应用函数,并返回一个迭...
    99+
    2023-08-09
    python
  • Python 内置高阶函数详细
    目录1、Python的内置高阶函数1.1 map()1.2 reduce() 函数1.3 reduce() 函数1.4 sorted() 函数1、Python的内置高阶函数 1.1 ...
    99+
    2024-04-02
  • 详解Python中的普通函数和高阶函数
    目录什么是函数函数的嵌套调用高阶函数我们思考一下计算圆形和方形的面积为何高阶函数能够降低维度总结什么是函数 每个语言都有函数,甚至大家用的Excel里面也有函数,我们以前学习的数学也...
    99+
    2024-04-02
  • Python函数进阶与文件操作详情
    目录一、作业回顾1、格式化输出与%百分号2、字符串切片3、字典的定义二、引用变量与可变、非可变类型1、引用变量聊聊变量在内存底层的存储形式如何验证Python中变量的引用关系把一个变...
    99+
    2024-04-02
  • JavaScript 闭包与高阶函数是怎样的
    JavaScript 闭包与高阶函数是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。「JavaScript 中,函数是一等公民」,在各种...
    99+
    2024-04-02
  • 在JavaScript中使用高阶函数的方法
    目录JavaScript将函数视为一等公民高阶函数接收函数作为参数代码可重用性返回函数高阶函数模板正在使用高阶函数总结将另一个函数作为参数的函数,或者定义一个函数作为返回值的函数,被...
    99+
    2024-04-02
  • 8个JavaScript中高阶函数的运用分享
    目录函数作为参数传递函数作为返回值函数柯里化函数组合面向切面编程函数式编程闭包复杂的例子函数作为参数传递 高阶函数可以接受一个或多个函数作为参数,这些函数可以在高阶函数中被调用,实现...
    99+
    2023-05-16
    JavaScript高阶函数运用 JavaScript高阶函数
  • JavaScript高阶API数组reduce函数使用示例
    目录正文1.求数组中所有对象的年龄和2.按照年龄分组3.将数组对象转化为对象4.参数打印总结正文 前面我们讲了数组的一些基本方法,今天给大家讲一下数组的reduce(),它是数组里面...
    99+
    2022-11-13
    JavaScript数组API reduce JavaScript API reduce
  • 总结JavaScript中BigIn函数常见的属性
    目录一、概述二、属性1. 数学运算符2. 比较运算符3. 布尔运算三、总结一、概述 BigInt 是一种特殊的数字类型,它提供了对任意长度整数的支持。 创建 bigint 的方式有两...
    99+
    2024-04-02
  • Python3的高阶函数map,red
    函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数,这种函数就称之为高阶函数。注意其中:map和filter返回一个惰性序列,可迭代对象,需要转化为list >>> a = 3.1415 >>&g...
    99+
    2023-01-31
    高阶 函数 map
  • C++ 函数参数详解:高阶函数中参数传递的范例
    c++++ 中有两种参数传递机制:传值传递和传址传递。传址传递将对象的内存地址传递给函数,而传值传递将值的副本传递给函数。高阶函数是接受函数作为参数的函数,其参数传递需要特别注意,因为传...
    99+
    2024-04-27
    c++ 函数参数 标准库
  • 详解Kotlin 高阶函数 与 Lambda 表达式
    详解Kotlin 高阶函数 与 Lambda 表达式高阶函数(higher-order function)是一种特殊的函数, 它接受函数作为参数, 或者返回一个函数. 这种函数的一个很好的例子就是 lock() 函数, 它的参数是一个锁对象...
    99+
    2023-05-31
    kotlin 高阶函数 lambda
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作