JavaScript Array reduce() 方法

返回上一级

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

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

浏览器支持

支持 9.0+ 支持 支持 支持

语法

array.reduce(function(total, currentValue, currentIndex, arr), initialValue)

参数

参数 描述
function(total,currentValue, index,arr) 必需。用于执行每个数组元素的函数
initialValue 可选。传递给函数的初始值

function ( total,currentValue, index,arr ) 参数说明

参数 描述
total 必需。初始值, 或者计算结束后的返回值
currentValue 必需。当前元素
currentIndex 可选。当前元素的索引
arr 可选。当前元素所属的数组对象

返回值

返回计算结果

范例

计算数组元素相加后的总和

var numbers = [65, 44, 12, 4];

function getSum(total, num) {
    return total + num;
}
function myFunction(item) {
    document.getElementById("demo").innerHTML = numbers.reduce(getSum);
}

运行范例 »

范例

四舍五入后计算数组元素的总和

<button onclick="myFunction()">点我</button>
<p>数组元素之和: <span id="demo"></span></p>
<script>
var numbers = [15.5, 2.3, 1.1, 4.7];

function getSum(total, num) {
    return total + Math.round(num);
}
function myFunction(item) {
    document.getElementById("demo").innerHTML = numbers.reduce(getSum, 0);
}
</script>

运行范例 »

返回上一级

JavaScript 参考手册

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.