reduce()方法
定義:reduce()接收一個函數作為累加器,數組中每個值(從左到右)開始縮減,最終計算為一個值
對於空數組不執行回調函數
語法:array.reduce(function(total, currentValue, currentIndex, arr), initialValue);
total: 必需。初始值,或者計算結束后的返回值。
currentValue: 必需。當前元素
currentIndex: 可選。當前元素的索引
arr: 可選。當前元素所屬的數組對象
initialValue: 可選。傳遞給函數的初始值;
返回值: 返回計算結果
例1:
var numbers = [33, 54, 23, 5];
function getSum(total, num) {
return total + num;
}
function myFunction(item) {
document.getElementById("demo").innerHTML = numbers.reduce(getSum);
}
例2:
<button onclick="myFunction()">點我</button>
<p>數組元素之和:<span id="demo"></span></p>
<script>
var numbers = [12.5, 2.3, 3.3, 33.7];
function getSum(total, num) {
return total + Math.round(num);
}
function myFunction(item) {
document.getElementById("demo").innerHTML = numbers.reduce(getSum, 0);
}
</script>