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

Essayez-le vous-même

Exemple 2

Rond à l'entier le plus proche de tous les nombres dans l'array et affichez la somme :

<button onclick="myFunction()">Essayez</button>
<p>Somme des nombres dans l'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>

Essayez-le vous-même

Grammaire

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

valeur de paramètre

Paramètres Description
function(total, currentValue, index, arr) Obligatoire. La fonction exécutée pour chaque élément de l'array.

Paramètres de la fonction :

Paramètres Description
total Obligatoire. initialValue ou la valeur précédemment retournée par la fonction.
currentValue Obligatoire. La valeur de l'élément courant.
index Optionnel. L'index de l'élément courant dans l'array.
arr Optionnel. L'objet d'array auquel appartient l'élément courant.
initialValue Optionnel. La valeur initiale passée à la fonction.

Détails techniques

Valeur de retour : Retourne le résultat cumulé de la dernière appel de la fonction callback.
Version JavaScript : ECMAScript 5

Support du navigateur

Les numéros dans le tableau indiquent la première version de navigateur prenant en charge cette méthode.

Tous les navigateurs le supportent pleinement reduce() Méthode :

Chrome IE Edge Firefox Safari Opera
Chrome 3 IE 9 Edge 12 Firefox 3 Safari 5 Opera 10.5
juin 2009 septembre 2010 juillet 2015 janvier 2009 juin 2010 mars 2010

pages associées

Tutoriel :JavaScript tableau

Tutoriel :Const des tableaux JavaScript

Tutoriel :Méthodes des tableaux JavaScript

Tutoriel :Tri des tableaux JavaScript

Tutoriel :Itération des tableaux JavaScript

Manuel :Méthode Array.reduceRight()