减去数组中的所有数字:
const numbers = [175, 50, 25];
document.getElementById("demo").innerHTML = numbers.reduce(myFunc);
function myFunc(total, num) {
return total - num;
}
亲自试一试 »
对所有数字进行四舍五入并显示总和:
const numbers = [15.5, 2.3, 1.1, 4.7];
document.getElementById("demo").innerHTML = numbers.reduce(getSum, 0);
function getSum(total, num) {
return total + Math.round(num);
}
亲自试一试 »
这个reduce()
方法对数组元素执行一个reducer函数。
这个reduce()
方法返回单个值:函数的累积结果。
这个reduce()
方法不会对空数组元素执行该函数。
这个reduce()
方法不会改变原始数组。
在第一个回调中,前一个回调没有返回值。
一般情况下,以数组元素0为初始值,从数组元素1开始迭代。
如果提供了初始值,则使用该初始值,并且迭代从数组元素 0 开始。
array.
reduce(
function(total, currentValue, currentIndex, arr), initialValue)
Parameter | Description | ||||||||
function() | Required. A function to be run for each element in the array. |
||||||||
Reducer function parameters:
|
|||||||||
initialValue | Optional. A value to be passed to the function as the initial value. |
上次调用回调函数的累积结果。 |
reduce()
是 ECMAScript5 (ES5) 功能。
所有浏览器完全支持 ES5 (JavaScript 2009):
Chrome | Edge | Firefox | Safari | Opera | IE |
Yes | Yes | Yes | Yes | Yes | 9-11 |
截取页面反馈部分,让我们更快修复内容!也可以直接跳过填写反馈内容!