compter les occurrences de deux clés dans les objets du tableau

Mais

J'ai le tableau suivant avec des objets et j'ai utilisé le code suivant pour créer un tally avec la clé "id":

var arr=[
{ id: 123, 
  title: "name1",
  status: "FAILED"
},
{
 id: 123,
 title: "name1", 
 status: "PASSED"
},
{
 id: 123,
 title: "name1",
 status: "PASSED"
},
{
 id: 123,
 title: "name1",
 status: "PASSED"
},
{
 id: 1234,
 title: "name2",
 status: "FAILED"
},
{
 id: 1234,
 title: "name2",
 status: "PASSED"
}

];


const test =arr.reduce((tally, item) => {
				
			  if (!tally[item.id]) {
				tally[item.id] = 1;
			  } else {
				tally[item.id] = tally[item.id] + 1;
			  }
			  return tally;
			}, {});
      
console.log(test);

Maintenant, ce que je veux faire est de modifier le décompte pour prendre également en considération l'état de la clé afin que le résultat soit quelque chose comme:

[
{id:123, status:"PASSED", tally:3},
{id:123, status:"FAILED", tally:1},
{id:1234, status:"PASSED", tally:1},
{id:1234, status:"FAILED", tally:1}
]

Une idée? Merci!

Baao

Faites juste la clé item.id + item.status, alors c'est une tâche simple

const res = Object.values(arr.reduce((a, b) => {
  a[b.id + b.status] = Object.assign(b, {tally: (a[b.id + b.status] || {tally: 0}).tally + 1});
  return a;
}, {}));

console.log(res);
<script>
const arr=[
  { id: 123,
    title: "name1",
    status: "FAILED"
  },
  {
    id: 123,
    title: "name1",
    status: "PASSED"
  },
  {
    id: 123,
    title: "name1",
    status: "PASSED"
  },
  {
    id: 123,
    title: "name1",
    status: "PASSED"
  },
  {
    id: 1234,
    title: "name2",
    status: "FAILED"
  },
  {
    id: 1234,
    title: "name2",
    status: "PASSED"
  }

];
</script>

Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.

En caso de infracción, por favor [email protected] Eliminar

Editado en
0

Déjame decir algunas palabras

0Comentarios
Iniciar sesiónRevisión de participación posterior

Artículos relacionados

Utilisation de array.reduce pour compter les occurrences dans un tableau d'objets

Compter les occurrences de tableaux uniques dans le tableau

Compter les objets de vérité dans un tableau

Compter les occurrences dans la trame de données avec deux conditions sans boucle for

compter les doublons dans le tableau d'objets et les regrouper par tableau ou clé d'objet

Compter les occurrences dans lisp

sélectionner les objets correspondants du tableau dans elasticsearch

Compter les mots particuliers du tableau dans un autre tableau

Compter les objets renvoyés par les travaux dans PowerShell?

Compter les types d'objets de tableau en une itération

Comment compter les occurrences de séquences de valeurs dans un bloc de données?

La meilleure façon de compter les occurrences dans une table?

Compter les occurrences de valeur dans une carte

compter les occurrences de phrases dans un dataframe python

compter les occurrences parmi un ensemble de mots dans r

Comment puis-je compter les occurrences d'un mot dans un tableau de chaînes en utilisant javascript?

Obtenez l'union des clés de tous les objets du tableau js en utilisant la réduction

Fusionner les objets du tableau

Compter les occurrences dans le tableau et afficher dans rmarkdown, évolutivité

compter les occurrences et créer des objets

Comment compter les occurrences de deux listes de mots pour déterminer la langue utilisée?

Comment compter les objets dans django

Conserver les clés lors du changement de tableau associatif

Compter les occurrences de dates en double

Comment compter et regrouper les occurrences dans un tableau 2-D?

Python - Compter les occurrences d'un élément comme une boucle dans un tableau non trié

Supprimer tous les objets du tableau avec une valeur de clé spécifique

Utilisation de l'agrégation MongoDB pour compter les occurrences entre deux tableaux

Regrouper les objets répertoriés en fonction du nom et de la source en tant que clé dans java