Es gibt so viele Lösungen für die Zusammenführung von zwei Arrays. Sie können in zwei Hauptkategorien unterteilt werden (außer der Verwendung von Bibliotheken von Drittanbietern wie lodash oder underscore.js).
a) zwei Arrays kombinieren und doppelte Elemente entfernen.
b) Elemente vor der Kombination herausfiltern.
Kombinieren zweier Arrays und Entfernen doppelter Elemente
Kombinieren
// mutable operation(array1 is the combined array)
array1.push(...array2);
array1.unshift(...array2);
// immutable operation
const combined = array1.concat(array2);
const combined = [...array1, ...array2]; // ES6
Vereinheitlichende
Es gibt viele Möglichkeiten, ein Array zu vereinheitlichen, ich persönlich schlage die folgenden zwei Methoden vor.
// a little bit tricky
const merged = combined.filter((item, index) => combined.indexOf(item) === index);
const merged = [...new Set(combined)];
Elemente vor der Kombination herausfiltern
Es gibt auch viele andere Möglichkeiten, aber ich persönlich schlage den folgenden Code vor, weil er so einfach ist.
const merged = array1.concat(array2.filter(secItem => !array1.includes(secItem)));