Heim >Web-Frontend >js-Tutorial >Wie finde ich den Unterschied zwischen zwei JavaScript-Arrays von Objekten?
Bestimmen des Unterschieds zwischen Arrays von Objekten in JavaScript
Das Konzept der Gegenüberstellung zweier Arrays von Objekten entsteht häufig beim Vergleich von Datensätzen. In diesem Artikel wird eine Methode zum Extrahieren verschiedener Elemente zwischen zwei Arrays untersucht, um die Beibehaltung spezifischer Objekteigenschaften sicherzustellen.
Betrachten Sie die folgenden Eingabearrays:
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" } ]
Das gewünschte Ergebnis ist der Unterschied zwischen diesen Arrays , was ein Array ergeben würde, das nur das eindeutige Element aus Ergebnis 1 enthält:
[ { value: "4", display: "Ryan" } ]
JavaScript bietet native Methoden, die diese Aufgabe elegant erledigen können. Durch die Definition einer Vergleichsfunktion, die die Gleichheit von Objekten anhand ihrer Eigenschaften bewertet, können Sie die Funktion onlyInLeft() nutzen, um Elemente zu identifizieren, die ausschließlich im linken (ursprünglichen) Array vorhanden sind. Der gleiche Vorgang kann auf das rechte (neue) Array angewendet werden.
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];
Die Ergebnisvariable enthält anschließend ein Array mit der Unterscheidung zwischen den beiden Eingabearrays. Dieser Ansatz bietet eine flexible Lösung zum Vergleichen von Objektarrays unter Beibehaltung spezifischer Eigenschaften für den Vergleich.
Das obige ist der detaillierte Inhalt vonWie finde ich den Unterschied zwischen zwei JavaScript-Arrays von Objekten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!