Heim  >  Artikel  >  Web-Frontend  >  Welche Methoden gibt es zum Deduplizieren von Arrays?

Welche Methoden gibt es zum Deduplizieren von Arrays?

零下一度
零下一度Original
2017-06-26 10:27:261240Durchsuche

Heute werde ich einfach über JS-Array-Deduplizierung schreiben. Hier habe ich drei Methoden zusammengefasst.

Die erste Methode:

Definieren Sie zuerst ein temporäres Array und durchlaufen Sie dann das aktuelle Array. Wenn das i-te Element des aktuellen Arrays gespeichert wurde temporäres Array Überspringen Sie dann dieses Element. Andernfalls fügen Sie das aktuelle Element zum temporären Array hinzu.

Der spezifische Code lautet wie folgt :

var arr = [23,23,1,1,1235,123,123,1235,45,345,457,45245,234,2341 ,23] ;
Array.prototype.unique1 = function(){
var n = [];//Definiere ein neues temporäres Array
for(var i = 0; i
//Wenn das i-te Element des aktuellen Arrays im temporären Array gespeichert wurde, überspringe es
// Andernfalls schiebe das aktuelle Element hinein das temporäre Array
if(n.indexOf(this[i])==-1){
n.push(this[i]);
}
}
return n;
}

Die zweite Methode:

Erstellen Sie zunächst ein neues Array, um das Ergebnis zu speichern, wenn das i-te Element des Das aktuelle Array ist das erste im aktuellen Array. Wenn die angezeigte Position nicht i ist, bedeutet dies, dass das i-te Element wiederholt wird. Filtern Sie es heraus, andernfalls wird es im Ergebnisarray gespeichert.

Der spezifische Code lautet wie folgt:

Array.prototype.unique2 = function(){
var n = [this[ 0]] ;//Ergebnisarray
for (var i = 1; i //Wenn das i-te Element des aktuellen Arrays zum ersten Mal an einer anderen Position als i erscheint ,
//Dann bedeutet dies, dass das i-te Element wiederholt wird. Filtern Sie es heraus, andernfalls wird es im Ergebnisarray gespeichert
if(this.indexOf(this[i])==i){
n.push(this[i ]);
}
}
return n;
}

Die dritte Methode:

Erstellen Sie zunächst eine temporäre Tabelle, ein temporäres Array. Wenn in der temporären Tabelle kein aktuelles Element vorhanden ist, wird es in der temporären Tabelle gespeichert und das aktuelle Element des aktuellen Arrays wird dem temporären Array hinzugefügt.

Der spezifische Code lautet wie folgt:

Array.prototype.unique3=function(){
var n = {},r=[];/ /n ist eine temporäre Tabelle, r ist ein temporäres Array
//Durchlaufe das aktuelle Array
for (var i = 0; i < this.length; i++) {
if (!n[this[i ]]) { //Wenn kein aktuelles Element in der temporären Tabelle vorhanden ist
n[this[i]]=true;//In der temporären Tabelle speichern
r.push(this[i]);/ /Schiebt das aktuelle Element des aktuellen Arrays in das temporäre Array

}
}
return r;
}

Das obige ist der detaillierte Inhalt vonWelche Methoden gibt es zum Deduplizieren von Arrays?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn