我们在日常生活中,求和计算已经深根于我们的需求中,也是很简单的计算。通过这段时间的学习,大家对js数组求和一个有所了解。本文小编就帮大家进阶一下,求js数组i到j的和。
一、reduce() 方法
接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。
会为数组中的每一个元素依次执行callback函数,不包括数组中被删除或从未被赋值的元素。
二、语法
arr.reduce(callback,[initialValue])
三、参数
callback (执行数组中每个值的函数,包含四个参数)
1、previousValue (上一次调用回调返回的值,或者是提供的初始值(initialValue))
2、currentValue (数组中当前被处理的元素)
3、index (当前元素在数组中的索引)
4、array (调用 reduce 的数组)
initialValue (作为第一次调用 callback 的第一个参数。)
四、返回值
该方法会返回函数累计处理的结果
五、对于一个N>100000的数组,求取数组元素i到j范围内的和。
function sumRange(arr, start, stop) { var tmpArr = arr.slice(start, stop); var result = tmpArr.reduce(function(a, b) { return a + b; }); return result; }
以上就是使用reduce() 方法js数组求i到j的和的原理及实现过程,不过需要注意的是该方法进行对于空数组是不会执行回调函数的。