reduce函数原理

reduce函数原理,第1张

reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。对空数组是不会执行回调函数的。reduce方法是数组的归并方法,这个方法与迭代方法(forEach方法等)一样,都会对数组进行遍历,不同的是reduce方法的回调函数中的第一个参数得到的是迭代计算后的结果。

reduce()方法的作用就是对这个数组进行求和,迭代了3次,迭代的初始值是1,也就是默认值,为数组的第一项。acl的值是每次迭代计算后的值。

第一次迭代:acl = 1,val = 2,idx = 1,arr = arr,迭代后函数返回值为:acl + val = 3。

第二次迭代:acl = 3,val = 3,idx = 2,arr = arr,迭代后函数返回值为:acl + val = 6。

添加了一个初始的迭代值10,也就是让acl从10开始计算,结合下图所示的打印结果,可知这里迭代了4次,结果中也加上了初始值。

菜鸟教程-reduce直通车

JS函数在线编辑直通车

reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。

reduce() 可以作为一个高阶函数,用于函数的 compose。

注意: reduce() 对于空数组是不会执行回调函数的。

以上为个人学习到的部分用法,学习过程中会进行补充。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11910841.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存