Heim > Web-Frontend > js-Tutorial > js löscht doppelte Elemente in einem Array und behält eine (zwei Implementierungsideen)_Javascript-Kenntnisse bei

js löscht doppelte Elemente in einem Array und behält eine (zwei Implementierungsideen)_Javascript-Kenntnisse bei

WBOY
Freigeben: 2016-05-16 16:39:02
Original
1419 Leute haben es durchsucht

Zum Beispiel: var student = ['qiang','ming','tao','li','liang','you','qiang','tao'];

Die erste Idee ist: Durchlaufen Sie das zu löschende Array arr, fügen Sie die Elemente jeweils in ein anderes Array tmp ein und erst nachdem festgestellt wurde, dass das Element in arr nicht vorhanden ist, kann es in tmp eingefügt werden

Es werden zwei Funktionen verwendet: for ...in und indexOf()

<script type="text/javascript"> 
var student = ['qiang','ming','tao','li','liang','you','qiang','tao'];
function unique(arr){
// 遍历arr,把元素分别放入tmp数组(不存在才放)
var tmp = new Array();
for(var i in arr){
//该元素在tmp内部不存在才允许追加
if(tmp.indexOf(arr[i])==-1){
tmp.push(arr[i]);
}
}
return tmp;
}

</script>
Nach dem Login kopieren

Die zweite Idee ist: Durch den Austausch der Elementwerte und Schlüsselpositionen des Zielarrays arr werden die doppelten Elemente automatisch gelöscht. Der Austausch sieht folgendermaßen aus: array('qiang'=> ;1 ,'ming'=>1,'tao'=>1)

<script type="text/javascript">
var student = ['qiang','ming','tao','li','liang','you','qiang','tao'];
function unique(arr){
var tmp = new Array();

for(var m in arr){
tmp[arr[m]]=1;
}
//再把键和值的位置再次调换
var tmparr = new Array();

for(var n in tmp){
tmparr.push(n);
}
return tmparr;
}
</script>
Nach dem Login kopieren
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage