第一种
Array.prototype.unique1=function(){
var res=[this[0]];
for(var i=1;i<this.length;i++){
var repeat=false;
for(var j=0;j<res.length;j++){
if(this[i]==res[j]){
repeat=true;
break;
}
}
if(!repeat){
res.push(this[i]);
}
}
return res;
}
var arr=[1,'a','a','b','d','e','e',1,0]
alert(arr.unique1());
第二种(先排序再比较)
Array.prototype.unique2=function(){
this.sort();//先排序
var res=[this[0]];
for(var i=1;i<this.length;i++){
if(this[i]!==res[res.length-1]){
res.push(this[i]);
}
}
return res;
}
var arr=[1,'a','a','b','d','e','e',1,0]
alert(arr.unique2());
第三种(比较高级)
Array.prototype.unique3=function(){
var res=[];
var json={};
var res=[this[0]];
for(var i=0;i<this.length;i++){
if(!json[this[i]]){
res.push(this[i]);
json[this[i]]=1;
}
}
return res;
}
var arr=[112,112,34,'你好',112,112,34,'你好','str','str1']
alert(arr.unique3());