reduce

常用场景:

  1. 数组去重
  2. 数组求和

语法:

arr.reduce(function(prev, cur, index, arr) {...}, init)

其中:

prev:第一次代表init,之后每一次都表示调用回调之后的返回值。

cur:表示当前处理的数组元素

index:表示当前正在处理的元素下标(若init存在,index为0,如果init不存在,index为1)

init:表示初始值

常用的也就是prev、cur、init

使用场景1 - 数组去重

let arr =  [2,3,4,4,5]
arr.reduce(function(prev, item) {
    !prev.includes(item) && prev.push(item)
    return prev
}, []) // [2,3,4,5]

使用场景2 - 数组求和

let arr = [2,3,4]
arr.reduce(function(prev, item) {
    return prev + item
}, 0) // 9
对于数组求和,讲个题外的j简单的求和方法
let arr = [2,3,4]
eval(arr.join("+")) // 9
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 过去有很长一段时间,我一直很难理解 reduce() 这个方法的具体用法,平时也很少用到它。事实上,如果你能真正了...
    前端王睿阅读 50,043评论 7 98
  • 语法 arr.reduce(function(total,cur,index,arr){...},init) 其中...
    小泡_08f5阅读 5,929评论 1 1
  • 一、定义 reduce() 方法对数组中的每个元素执行一个由您提供的reducer函数(升序执行),将其结果汇总为...
    抠脚大婶阅读 4,388评论 0 0
  • W3Cschool上面的解析是依次处理数组的每个成员,最终累计为一个值。reduce方法接收两个参数,第一个参数是...
    风语1201阅读 4,179评论 0 1
  • 语法 array.reduce(function(prev, cur, currentIndex, arr), i...
    墨芊baby阅读 4,385评论 0 0

友情链接更多精彩内容