您的位置:首页 > Web前端 > JavaScript

实现JavaScript数组去重

2017-12-05 10:48 197 查看
在JavaScript中对象判断某属性是否已存在可直接利用 in 关键字,但是在数组中,既没有提供原生方法,也不像对象那么好判断。以下方法实现了JavaScript去重的功能。

Array.prototype.unique=function(){
var obj={};   //这里的局部对象便于以下判断是否有重复
for(var i=0;i<this.length;i++){
if(this[i] in obj){
this[i]=this[this.length-1]; // 将该项变为最后一项
this.length=this.length-1;  // 将数组长度-1,并删除最后一项
i--;  // 重新判断该项
}
else{
obj[this[i]]=this[i];
}
}
return arr;
}
var arr=[1,2,3,1,2,3];
arr.unique();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: