Maison  >  Article  >  interface Web  >  Explication détaillée de l'utilisation de la méthode réduire() en JavaScript

Explication détaillée de l'utilisation de la méthode réduire() en JavaScript

高洛峰
高洛峰original
2016-12-28 09:44:471380parcourir

La méthode JavaScript array réduire() applique une fonction à deux valeurs du tableau (de gauche à droite) simultanément pour les réduire à une seule valeur.
Syntaxe

array.reduce(callback[, initialValue]);

Voici le détail des paramètres :

rappel : La fonction est exécutée pour chaque valeur du tableau

initialValue : Objet comme premier argument du premier appel du rappel en utilisant

Valeur de retour :

Renvoie une valeur unique réduite du tableau
Compatibilité :

Cette méthode est une extension JavaScript de la norme ECMA-262, elle peut donc ne pas exister dans d'autres implémentations de la norme ; Pour que cela fonctionne, vous devez ajouter le script suivant en haut du code :

if (!Array.prototype.reduce)
{
 Array.prototype.reduce = function(fun /*, initial*/)
 {
  var len = this.length;
  if (typeof fun != "function")
   throw new TypeError();
 
  // no value to return if no initial value and an empty array
  if (len == 0 && arguments.length == 1)
   throw new TypeError();
 
  var i = 0;
  if (arguments.length >= 2)
  {
   var rv = arguments[1];
  }
  else
  {
   do
   {
    if (i in this)
    {
     rv = this[i++];
     break;
    }
 
    // if array contains no values, no initial value to return
    if (++i >= len)
     throw new TypeError();
   }
   while (true);
  }
 
  for (; i < len; i++)
  {
   if (i in this)
    rv = fun.call(null, rv, this[i], i, this);
  }
 
  return rv;
 };
}

Exemple :



JavaScript Array reduce Method




Cela produira les résultats suivants :

total is : 6

Pour des explications plus détaillées sur l'utilisation de la fonction réduire() méthode en JavaScript, veuillez vous référer aux articles connexes Suivez le site Web PHP chinois !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn