Maison >interface Web >js tutoriel >Comment pouvez-vous regrouper et additionner un tableau d'objets dans jQuery à l'aide de la méthode Reduction ?

Comment pouvez-vous regrouper et additionner un tableau d'objets dans jQuery à l'aide de la méthode Reduction ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-23 06:17:22292parcourir

How Can You Group and Sum an Array of Objects in jQuery Using the Reduce Method?

Regrouper et additionner un tableau d'objets dans jQuery : un guide détaillé

Regrouper et additionner des valeurs dans un tableau d'objets est une tâche courante en programmation. Dans jQuery, cela peut être réalisé efficacement en utilisant la méthode réduire().

Comprendre l'objectif

L'objectif est de regrouper un tableau d'objets en fonction d'une propriété spécifique , dans ce cas, la propriété "Id". Une fois les objets regroupés, la quantité (« quantité ») de chaque groupe doit être résumée.

Solution étape par étape

  1. Initialisation : Créez un tableau vide nommé result pour stocker les éléments groupés objets.
  2. Boucle à travers le tableau : Utilisez la méthode réduire() pour parcourir le tableau. Cette méthode prend deux fonctions en paramètres :

    • fonction accumulateur : Accumule les résultats des itérations précédentes. Il est généralement représenté par res ou acc.
    • value function : Traite l'élément actuel dans le tableau. Il est généralement représenté sous forme de valeur ou currentValue.
  3. Regroupement : Dans la méthode réduire(), vérifiez si l'objet accumulateur (res) a une propriété correspondant à celle de l'objet actuel. Propriété « Id ». Sinon, initialisez un objet avec le "Id" actuel comme propriété et une propriété "qty" initialisée à 0, et poussez cet objet dans le tableau de résultats.
  4. Résumation : Mettez à jour le Propriété "qty" de l'objet accumulateur correspondant au "Id" de l'objet courant en ajoutant la "qty" de l'objet courant value.
  5. Renvoyer le résultat : La méthode réduire() renvoie l'objet accumulateur final. Cet objet représente le tableau d'objets regroupés et additionnés.

Exemple de mise en œuvre

L'extrait de code jQuery suivant illustre les étapes décrites ci-dessus :

var array = [
  { Id: "001", qty: 1 },
  { Id: "002", qty: 2 },
  { Id: "001", qty: 2 },
  { Id: "003", qty: 4 }
];

var result = [];
array.reduce(function(res, value) {
  if (!res[value.Id]) {
    res[value.Id] = { Id: value.Id, qty: 0 };
    result.push(res[value.Id])
  }
  res[value.Id].qty += value.qty;
  return res;
}, {});

console.log(result);

Ce code affichera le tableau d'objets regroupés et additionnés suivant :

[
  { Id: "001", qty: 3 },
  { Id: "002", qty: 2 },
  { Id: "003", qty: 4 }
]

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en 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