Heim >Web-Frontend >js-Tutorial >Wie kann ich die Unterschiede zwischen zwei JavaScript-Objektarrays effizient finden?
Bei zwei Arrays von Objekten ist es wünschenswert, deren Unterschiede zu identifizieren. In dieser Hinsicht bietet das folgende Code-Snippet eine Lösung:
const a = [{ value: "0", display: "Jamsheer" }, { value: "1", display: "Muhammed" }, { value: "2", display: "Ravi" }, { value: "3", display: "Ajmal" }, { value: "4", display: "Ryan" }]; const b = [{ value: "0", display: "Jamsheer" }, { value: "1", display: "Muhammed" }, { value: "2", display: "Ravi" }, { value: "3", display: "Ajmal" }]; // Equality comparison function const isSameUser = (a, b) => a.value === b.value && a.display === b.display; // Filter function to identify unique elements in the left array (a) const onlyInLeft = (left, right, compareFunction) => left.filter(leftValue => !right.some(rightValue => compareFunction(leftValue, rightValue) ) ); // Apply the filter functions const onlyInA = onlyInLeft(a, b, isSameUser); const onlyInB = onlyInLeft(b, a, isSameUser); // Concatenate the unique elements from both arrays const result = [...onlyInA, ...onlyInB]; console.log(result);
Dieser Code vergleicht effektiv die Arrays von Objekten mithilfe der bereitgestellten Vergleichsfunktion (isSameUser) und identifiziert die eindeutigen Elemente in jedem Array. Das Endergebnis ist ein Array, das diese eindeutigen Elemente aus beiden Eingabearrays enthält.
Das obige ist der detaillierte Inhalt vonWie kann ich die Unterschiede zwischen zwei JavaScript-Objektarrays effizient finden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!