手机版

JavaScript数组重复数据删除几种方法的效率测试

时间:2021-09-14 来源:互联网 编辑:宝哥软件园 浏览:

以下是我对网上三种高效方法的总结和效率测试。如果你有更好的意见或建议,也可以提出来,我们可以互相学习。

阵列重复数据消除方法1:

array . prototype . unique 1=function(){ console . time('阵列重复数据消除方法1 ');//记录开始执行的时间。var arr=[];//创建临时数组var obj={ };//为(var I=0;我这个长度;I ){ //遍历数组if(!Obj[this[i]]){ //判断Obj对象中是否有当前项,如果没有,执行arr . push(this[I]);//将当前项目推入临时数组。这个[我]=1;//将当前项目保存到obj object}} console.timeEnd('阵列重复数据消除方法1 ');//记录执行结束时间:return arr}阵列重复数据消除方法2:

array . prototype . unique 2=function(){ console . time('阵列重复数据消除方法2 ');//记录开始执行的时间。var arr=[];//为(var i=0)创建临时数组;我这个长度;I ){ //遍历当前数组if (arr。(this [I])的index==-1){//判断当前项是否存在于临时数组中,如果不存在,执行arr . push(this[I]);//将当前项目推入临时数组}} console.timeEnd('数组重复数据删除方法2 ');//记录执行结束时间:return arr}阵列重复数据消除方法3:

array . prototype . unique 3=function(){ console . time('阵列重复数据消除方法3 ');//记录开始执行的时间。var arr=[this[0]];//创建一个临时阵列,并将阵列中要消除重复数据的第一项存储在临时阵列中(var I=1;我这个长度;我){//遍历if(这个。(this [I])的索引===I)从要进行重复数据消除的数组的第二项开始{//判断当前项是否存在于临时数组中,如果不存在,则执行arr . push(this[I]);//将当前项目推入临时数组}} console.timeEnd('数组重复数据删除方法3 ');//记录执行结束时间:return arr}效率测试方法:

var arr 1=[];//创建要进行重复数据消除的阵列(var I=0;i 20万;I ){ //遍历200,000个数据arr 1 . push(par sent(math . random()* 10)1);//将所有数据作为随机数(1到10之间)返回并推送到要进行重复数据消除的阵列} console . log(arr 1 . unique 1());//打印数组去重方法1的执行时间console . log(arr 1 . unique 2());//打印数组去重方法2的执行时间console . log(arr 1 . unique 3());//打印阵列重复数据消除方法3执行时间效率测试结果:

摘要

以上是关于JavaScript中几种阵列重复数据删除方法的效率测试。我希望测试结果将帮助您选择使用阵列重复数据消除方法。有问题可以留言交流。谢谢你的支持。

版权声明:JavaScript数组重复数据删除几种方法的效率测试是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。