首页 > 代码库 > Array.prototype.reduce()
Array.prototype.reduce()
原文出处:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce
语法:arr.reduce(callback,[ initialValue])
var total = [0, 1, 2, 3].reduce(function(sum, value) { return sum + value; }, 1); console.log(total);//7 var flattened = [[0, 1], [2, 3], [4, 5]].reduce(function(a, b) { return a.concat(b); }); console.log(flattened);//[0, 1, 2, 3, 4, 5]
reduce对数组中存在的每个元素执行一次回调函数,排除数组中的空格,接收四个参数:
accumulator
currentValue
currentIndex
array
第一次调用callback时,accumulator
和currentValue可以是两个值之一。如果在调用reduce中提供initialValue,则累加器将等于initialValue,而currentValue将等于数组中的第一个值。如果没有提供initialValue,则累加器将等于数组中的第一个值,而currentValue将等于第二个值。
注意:如果未提供initialValue,则reduce将执行回调函数,从索引1开始,跳过第一个索引。如果提供了initialValue,它将从索引0开始。
如果数组为空且没有提供initialValue,则将抛出TypeError。如果数组只有一个元素(不管位置),并且没有提供initialValue,或者如果提供了initialValue,但数组为空,则将返回那个元素的值而不调用回调。
Array.prototype.reduce()
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。