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;
}

Versuchen Sie es selbst

Beispiel 2

Runden Sie alle Zahlen im Array und zeigen Sie die Summe an:

<button onclick="myFunction()">Versuchen Sie es</button>
<p>Summe der Zahlen im 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>

Versuchen Sie es selbst

Syntax

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

Wert der Parameter

Parameter Beschreibung
function(total, currentValue, index, arr) Erforderlich. Funktion, die für jedes Element im Array ausgeführt wird.

Funktion参数:

Parameter Beschreibung
total Erforderlich. initialValue oder der Wert, der von der Funktion zuvor zurückgegeben wurde.
currentValue Erforderlich. Der Wert des aktuellen Elements.
index Optional. Der Array-Index des aktuellen Elements.
arr Optional. Das Array-Objekt, zu dem der aktuelle Element gehört.
initialValue Optional. Wert, der der Funktion als Initialwert übergeben wird.

Technische Details

Rückgabewert: Gibt das kumulative Ergebnis der letzten Aufrufe der Callback-Funktion zurück.
JavaScript-Version: ECMAScript 5

Browser-Unterstützung

Die in der Tabelle angegebenen Zahlen kennzeichnen die erste Browser-Version, die diese Methode vollständig unterstützt.

Alle Browser unterstützen dies vollständig reduce() Methode:

Chrome IE Edge Firefox Safari Opera
Chrome 3 IE 9 Edge 12 Firefox 3 Safari 5 Opera 10.5
Juni 2009 September 2010 Juli 2015 Januar 2009 Juni 2010 März 2010

zugehörige Seite

Tutorial:JavaScript-Array

Tutorial:JavaScript-Array-Const

Tutorial:JavaScript-Array-Methode

Tutorial:JavaScript-Array-Sortieren

Tutorial:JavaScript-Array-Iteration

Handbuch:Array.reduceRight()-Methode