Trouver des différences entre des tableaux d'objets en JavaScript
Étant donné deux tableaux d'objets avec des structures similaires, il peut être nécessaire de déterminer les objets qui sont uniques à chaque tableau. Ce scénario se produit lors de la comparaison d’ensembles de résultats ou de l’exécution d’un rapprochement de données. En JavaScript, trouver la différence entre des tableaux d'objets peut être obtenu grâce à une combinaison de filtrage et de comparaison.
Pour identifier les objets uniques dans chaque tableau, nous pouvons d'abord définir une fonction de comparaison qui évalue si deux objets sont équivalents. en fonction de leurs propriétés. Par exemple :
const isSameUser = (a, b) => a.value === b.value && a.display === b.display;
Ensuite, nous pouvons utiliser la méthode de filtrage pour parcourir un tableau et sélectionner les objets qui ne sont pas présents dans l'autre tableau, selon la fonction de comparaison.
const onlyInLeft = (left, right, compareFunction) => left.filter(leftValue => !right.some(rightValue => compareFunction(leftValue, rightValue)));
En appliquant cette technique aux deux tableaux, on peut obtenir deux tableaux contenant les objets uniques pour chacun :
const onlyInA = onlyInLeft(a, b, isSameUser); const onlyInB = onlyInLeft(b, a, isSameUser);
Enfin, on peut combiner les objets uniques des deux tableaux en un seul résultat :
const result = [...onlyInA, ...onlyInB];
Le tableau de résultats résultant contiendra les objets uniques aux deux tableaux, fournissant une représentation complète des différences entre eux.
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!