Détermination de la différence entre des tableaux d'objets en JavaScript
Le concept de comparaison de deux tableaux d'objets surgit souvent lors de la comparaison d'ensembles de données. Cet article explore une méthode pour extraire des éléments distincts entre deux tableaux, garantissant la préservation des propriétés d'objet spécifiques.
Considérez les tableaux d'entrée suivants :
Result 1: [ { value: "0", display: "Jamsheer" }, { value: "1", display: "Muhammed" }, { value: "2", display: "Ravi" }, { value: "3", display: "Ajmal" }, { value: "4", display: "Ryan" } ] Result 2: [ { value: "0", display: "Jamsheer" }, { value: "1", display: "Muhammed" }, { value: "2", display: "Ravi" }, { value: "3", display: "Ajmal" } ]
Le résultat souhaité est la différence entre ces tableaux , ce qui donnerait un tableau contenant uniquement l'élément unique du résultat 1 :
[ { value: "4", display: "Ryan" } ]
JavaScript propose des méthodes natives qui peuvent accomplir cette tâche avec élégance. En définissant une fonction de comparaison qui évalue l'égalité des objets en fonction de leurs propriétés, vous pouvez exploiter la fonction onlyInLeft() pour identifier les éléments qui existent uniquement dans le tableau de gauche (d'origine). Ce même processus peut être appliqué au (nouveau) tableau de droite.
const isSameUser = (a, b) => a.value === b.value && a.display === b.display; const onlyInA = onlyInLeft(result1, result2, isSameUser); const onlyInB = onlyInLeft(result2, result1, isSameUser); const result = [...onlyInA, ...onlyInB];
La variable résultat contiendra par la suite un tableau avec la distinction entre les deux tableaux d'entrée. Cette approche fournit une solution flexible pour comparer des tableaux d'objets tout en préservant des propriétés spécifiques pour la comparaison.
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!