Heim >Web-Frontend >js-Tutorial >Welche 5 Möglichkeiten gibt es, Arrays in JavaScript zu deduplizieren?
5 Möglichkeiten, Arrays zu deduplizieren: 1. Verwenden Sie die Anweisung „[...new Set(arr)]“ zum Deduplizieren; 2. Verwenden Sie die Anweisung „Array.from(new Set(arr))“ zum Deduplizieren; Verwenden Sie indexOf(), um Duplikate zu entfernen. 4. Verwenden Sie Includes(), um Duplikate zu entfernen. 5. Verwenden Sie filter(), um Duplikate zu entfernen.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, JavaScript-Version 1.8.5, Dell G3-Computer.
Methode zum Deduplizieren von Arrays
1. Array .from(new Set(arr))
const arr = [1, 2, 3, 2, 3]; [...new Set(arr)]; // [1, 2, 3]
Da die Elemente in Set eindeutig sind, unabhängig davon, ob es sich um Originalwerte oder Objektreferenzen handelt, kann eine Deduplizierung durch Konvertieren des Arrays in ein Set-Objekt erreicht werden
Array.from Methode Sie können das Set-Objekt in ein Array konvertieren
3. Verwenden Sie indexOf, um Duplikate zu entfernen. Erstellen Sie eine neue leere Ergebnis-Array, um festzustellen, ob das aktuelle Element im Ergebnis-Array vorhanden ist ist derselbe Wert, überspringen Sie ihn. Wenn nicht, drücken Sie ihn in das Array.4. Die Verwendung beinhaltet
const arr = [1, 2, 3, 2, 3]; Array.from(new Set(arr)); // [1, 2, 3]5. Verwenden Sie Filter
function unique(arr) { if (!Array.isArray(arr)) { console.log('type error!') return } var array = []; for (var i = 0; i < arr.length; i++) { if (array .indexOf(arr[i]) === -1) { array .push(arr[i]) } } return array; } var arr = [1,1,'true','true',true,true,15,15,false,false, undefined,undefined, null,null, NaN, NaN,'NaN', 0, 0, 'a', 'a',{},{}]; console.log(unique(arr)) // [1, "true", true, 15, false, undefined, null, NaN, NaN, "NaN", 0, "a", {…}, {…}] //NaN、{}没有去重[Verwandte Empfehlungen:
Javascript-Lerntutorial]
Das obige ist der detaillierte Inhalt vonWelche 5 Möglichkeiten gibt es, Arrays in JavaScript zu deduplizieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!