Heim >Web-Frontend >js-Tutorial >Wie finde ich die Unterschiede zwischen zwei Arrays von Objekten in JavaScript?
Unterschiede zwischen Arrays von Objekten in JavaScript finden
Angesichts zweier Arrays von Objekten mit ähnlichen Strukturen kann es notwendig sein, die Objekte zu bestimmen sind für jedes Array einzigartig. Dieses Szenario tritt auf, wenn Ergebnismengen verglichen oder ein Datenabgleich durchgeführt werden. In JavaScript lässt sich der Unterschied zwischen Arrays von Objekten durch eine Kombination aus Filterung und Vergleich ermitteln.
Um die eindeutigen Objekte in jedem Array zu identifizieren, können wir zunächst eine Vergleichsfunktion definieren, die bewertet, ob zwei Objekte äquivalent sind basierend auf ihren Eigenschaften. Zum Beispiel:
const isSameUser = (a, b) => a.value === b.value && a.display === b.display;
Als nächstes können wir die Filtermethode verwenden, um ein Array zu durchlaufen und die Objekte auszuwählen, die im anderen Array nicht vorhanden sind, entsprechend der Vergleichsfunktion.
const onlyInLeft = (left, right, compareFunction) => left.filter(leftValue => !right.some(rightValue => compareFunction(leftValue, rightValue)));
Indem wir diese Technik auf beide Arrays anwenden, können wir zwei Arrays erhalten, die jeweils die einzigartigen Objekte enthalten:
const onlyInA = onlyInLeft(a, b, isSameUser); const onlyInB = onlyInLeft(b, a, isSameUser);
Schließlich können wir die einzigartigen Objekte kombinieren Objekte aus beiden Arrays in einem einzigen Ergebnis:
const result = [...onlyInA, ...onlyInB];
Das resultierende Ergebnisarray enthält die Objekte, die für beide Arrays eindeutig sind, und bietet eine umfassende Darstellung der Unterschiede zwischen ihnen.
Das obige ist der detaillierte Inhalt vonWie finde ich die Unterschiede zwischen zwei Arrays von Objekten in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!