JavaScript如何去除数组中重复元素的思路和代码实例详解

伊谢尔伦
Freigeben: 2017-07-24 13:27:33
Original
1575 Leute haben es durchsucht

在写程序过程中,经常会遇到去除数组中重复元素的需求。我们可以用一个两重循环来实现,对于小的数组。但如果我们的数组比较大,里面的元素有上万个。那么用两重循环,效率是极为低下。下面我们就用js的特性,编写一个高效去除数组重复元素的方法。

Nach dem Login kopieren

输出结果:
9,1,3,8,7,6,5,4
js数组去重就是把数组中重复的元素去掉:

Array.prototype.delRepeat=function(){ var newArray=new Array(); var len=this.length; for (var i=0;i
        
Nach dem Login kopieren

但是很明显这里有for循环内嵌了另一个for循环,在大数据量下肯定非常耗时!效率低下!经过查找和高人指点优化了一个新方法:

Array.prototype.delRepeat=function(){ var newArray=[]; var provisionalTable = {}; for (var i = 0, item; (item= this[i]) != null; i++) { if (!provisionalTable[item]) { newArray.push(item); provisionalTable[item] = true; } } return newArray; }
Nach dem Login kopieren

就是使用一个临时的provisionalTable对象,将数组的值作为provisionalTable对象的键值,如果相应的值不存在就将这个数组的值push到新数组中。

Das obige ist der detaillierte Inhalt vonJavaScript如何去除数组中重复元素的思路和代码实例详解. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!