reduce函数原理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了reduce函数原理相关的知识,希望对你有一定的参考价值。

参考技术A 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函数原理的主要内容,如果未能解决你的问题,请参考以下文章

3.python中map,filter,reduce以及内部实现原理剖析

Python 之内置函数:filter、map、reduce、zip、enumerate

Reduce归约 证明原理

利用reduce 模仿map原理

如何确定 Hadoop map和reduce的个数

Map-Reduce原理