Objekte nach ID in JavaScript zusammenführen
In JavaScript können Objekte effektiv zusammengeführt werden, um Daten aus mehreren Quellen zu kombinieren. Beim Umgang mit Arrays von Objekten besteht eine häufige Herausforderung darin, Objekte nach einem bestimmten Feld zusammenzuführen, das oft als ID bezeichnet wird.
Zum Beispiel bei den folgenden Arrays:
var a1 = [{ id: 1, name: "test"}, { id: 2, name: "test2"}]; var a2 = [{ id: 1, count: "1"}, {id: 2, count: "2"}];
wir Ich möchte sie basierend auf dem Feld „id“ kombinieren, was zu dem Ergebnis führt Folgendes:
var a3 = [{ id: 1, name: "test", count: "1"}, { id: 2, name: "test2", count: "2"}];
Lösung:
Eine prägnante und effektive Lösung in ES6 ist die Nutzung der nativen Kartenfunktion:
const a3 = a1.map(t1 => ({...t1, ...a2.find(t2 => t2.id === t1.id)}));
Hier , durchlaufen wir jedes Objekt t1 in a1 und erstellen ein neues Objekt. Mit dem Spread-Operator (...) verteilen wir die Eigenschaften von t1 auf das neue Objekt.
Um Eigenschaften vom passenden Objekt in a2 anzuhängen, verwenden wir die Methode „find“, um das Objekt mit dem passenden „ zu finden. Ausweis'. Anschließend verteilen wir die Eigenschaften dieses gefundenen Objekts auf das neue Objekt.
Dieser Ansatz kombiniert auf elegante Weise Daten aus den beiden Arrays und erzeugt so das gewünschte Ergebnis. Es ist auch erweiterbar, um komplexere Szenarien nahtlos zu bewältigen.
Das obige ist der detaillierte Inhalt vonWie füge ich JavaScript-Objekte nach ID zusammen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!