Maison > interface Web > js tutoriel > Comment trouver la différence entre deux tableaux d'objets JavaScript ?

Comment trouver la différence entre deux tableaux d'objets JavaScript ?

Susan Sarandon
Libérer: 2024-12-18 01:12:09
original
454 Les gens l'ont consulté

How to Find the Difference Between Two JavaScript Arrays of Objects?

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" }
]
Copier après la connexion

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" }
]
Copier après la connexion

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];
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal