JavaScript Array reduce() 方法

定義和用法

reduce() 方法將數組縮減為單個值。

reduce() 方法為數組的每個值(從左到右)執行提供的函數。

函數的返回值存儲在累加器中(結果/總計)。

註釋:對沒有值的數組元素,不執行 reduce() 方法。

註釋:reduce() 方法不會改變原始數組。

實例

例子 1

從頭開始減去數組中的數字:

var numbers = [175, 50, 25];
document.getElementById("demo").innerHTML = numbers.reduce(myFunc);
function myFunc(total, num) {
  return total - num;
}

ทดลองด้วยตัวเอง

ตัวอย่าง 2

เรียกเลขทั้งหมดในอาเจียน และแสดงสุทธิ:

<button onclick="myFunction()">Try it</button>
<p>Sum of numbers in array: <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>

ทดลองด้วยตัวเอง

คำสั่ง

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

ค่าประกาศ

ประกาศ คำอธิบาย
function(total, currentValue, index, arr) จำเป็น

ประกาศฟังก์ชัน:

ประกาศ คำอธิบาย
total จำเป็น
currentValue จำเป็น
index ตัวเลือก
arr ตัวเลือก
initialValue ตัวเลือก

รายละเอียดเทคนิค

ค่าที่กลับค่า: กลับค่าผลสะสมของการเรียกฟังก์ชันคลิกทุกครั้ง
เวอร์ชั่น JavaScript: ECMAScript 5

การสนับสนุนเบราวเซอร์

ตัวเลขในตารางชี้ถึงเบราวเซอร์รุ่นที่สนับสนุนมาตรการนี้อย่างเต็มที่

ทุกเบราวเซอร์สนับสนุนอย่างเต็มที่ reduce() วิธี:

Chrome IE Edge Firefox Safari Opera
Chrome 3 IE 9 Edge 12 Firefox 3 Safari 5 Opera 10.5
เดือนมิถุนายน 2009 เดือนกันยายน 2010 เดือนกรกฎาคม 2015 เดือนมกราคม 2009 เดือนมิถุนายน 2010 เดือนมีนาคม 2010

เพจที่เกี่ยวข้อง

คู่มือ:JavaScript อาเจียน

คู่มือ:JavaScript Array Const

คู่มือ:วิธีการ Array ของ JavaScript

คู่มือ:การจัด序 JavaScript

คู่มือ:การวนลูปแบบ Array ของ JavaScript

คู่มือ:การใช้เมธอด Array.reduceRight()