Maison >interface Web >js tutoriel >Comment regrouper et additionner un tableau d'objets par une clé en JavaScript ?

Comment regrouper et additionner un tableau d'objets par une clé en JavaScript ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-23 03:33:22652parcourir

How to Group and Sum an Array of Objects by a Key in JavaScript?

Regrouper et additionner un tableau d'objets par une clé

En JavaScript, vous pouvez regrouper un tableau d'objets par une clé et une somme spécifiques les valeurs associées à cette clé à l'aide des puissants outils de jQuery. Voici comment y parvenir :

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

Bouclage et sommation

Une méthode efficace consiste à parcourir le tableau et à accumuler les valeurs à l'aide de la méthode réduire() . Cette méthode prend une fonction de rappel qui réduit le tableau à une seule valeur, dans ce cas, un objet représentant les valeurs groupées.

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;
}, {});

Sortie :

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

Cette solution regroupe efficacement les objets par la clé Id et additionne les valeurs de quantité correspondantes, ce qui donne un tableau d'objets avec des valeurs regroupées et additionnées.

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