Heim >Web-Frontend >Front-End-Fragen und Antworten >So implementieren Sie die arr-(Array-)Deduplizierung in es6
3 Implementierungsmethoden: 1. Datenstruktur und „Array.from()“-Deduplizierung festlegen, Syntax „Array.from(new Set(arr))“ 2. Datenstruktur und Erweiterungsoperator „…“ festlegen , die Syntax „[...new Set(arr)]“; 3. filter() und indexOf() Filterung, die Syntax „arr.filter((it,in)=>{return arr.indexOf(it , 0)===in;});“.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, ECMAScript Version 6, Dell G3-Computer. 5 Möglichkeiten, ES6-Arrays zu deduplizieren sind per se keine doppelten Werte. Mit dieser Funktion können wir das Array zur Deduplizierung in einen Set-Typ konvertieren und es dann mithilfe der Array.from-Methode erneut in ein Array konvertieren.
Die Array.from-Methode wird verwendet, um zwei Arten von Objekten in echte Arrays umzuwandeln: Array-ähnliche Objekte und iterierbare Objekte (einschließlich der neuen Datenstrukturen Set und Map von ES6).
implementation idee:
Array.from(new Set(arr))example:
let arr=[1,2,3,3,2,"1",0,undefined,undefined]; let newArr=Array.from(new Set(arr)); console.log(newArr);
Der Spread-Operator
Implementierungsidee:
…
[...new Set(arr)]Beispiel:
let arr=[1,2,3,3,2,"1",0,1,2]; let newArr=[...new Set(arr)]; console.log(newArr);
filter()-Methode, um ein neues Array zu erstellen, werden alle Elemente im angegebenen Array überprüft Array, das die Bedingungen erfüllt. Die
indexOf-Methode gibt den ersten Index (Index) des angegebenen Elements im Array zurück. Wenn nicht, gibt sie -1 zurück. Beispiel:
var arr=[1, 2, 3, 2, 3]; var newArr = arr.filter((item,index)=> { return arr.indexOf(item,0) === index; }); console.log(newArr);
Hier übergibt also jedes Element im arr-Array indexOf() Die von der Methode zurückgegebenen Indexwerte sind 0 1 2 1 2
arr.forEach(item => console.log(arr.indexOf(item))); // 0 1 2 1 2Sie können indexOf verwenden, um eine Deduplizierung zu erreichen. Beispielsweise gibt das vierte Element 2 in arr einen Index von 1 bis indexOf zurück, aber sein aktueller Indexindex ist 3 , sind nicht gleich, was darauf hinweist, dass das aktuelle 2-Element bereits zuvor aufgetreten ist und daher herausgefiltert werden sollte. 【Verwandte Empfehlungen:
Javascript-Video-Tutorial
,Web-Frontend
】
Das obige ist der detaillierte Inhalt vonSo implementieren Sie die arr-(Array-)Deduplizierung in es6. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!