Maison >interface Web >js tutoriel >Comment fusionner des clés en double et additionner leurs valeurs dans des tableaux d'objets JavaScript ?
Lorsque vous travaillez avec des tableaux d'objets JavaScript, vous pouvez rencontrer des clés en double qui représentent des entités similaires. Pour consolider ces doublons et agréger leurs valeurs correspondantes, vous pouvez exploiter l'approche suivante :
let objArr = [ {key: 'Mon Sep 23 2013 00:00:00 GMT-0400', val: 42}, {key: 'Mon Sep 24 2013 00:00:00 GMT-0400', val: 78}, {key: 'Mon Sep 25 2013 00:00:00 GMT-0400', val: 23}, {key: 'Mon Sep 23 2013 00:00:00 GMT-0400', val: 54} ]; // Utilize a Map to consolidate duplicate keys let counts = objArr.reduce((prev, curr) => { let count = prev.get(curr.key) || 0; prev.set(curr.key, curr.val + count); return prev; }, new Map()); // Convert the Map back to an array let reducedObjArr = [...counts].map(([key, value]) => { return {key, value} }) console.log(reducedObjArr);
Cette solution exploite une carte pour accumuler les valeurs associées aux clés en double. Il parcourt le tableau d'origine, extrayant la clé et la valeur de chaque objet. Si la clé existe déjà dans la Map, elle incrémente sa valeur correspondante. Enfin, il reconvertit la carte en un tableau d'objets, fournissant le résultat souhaité.
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!