var arr = [1,1,1,2,2,2,3,3,3];
function norepeat(arr){ //第一种去重方法
for(var i = 0; i < arr.length - 1; i++){
for(var j = i+1;j < arr.length; j++){
//[1,1,2,1,2,1,1]
//第一次 j == 1 第二次 j==2
if(arr[i]==arr[j]){
arr.splice(j,1);//删除之后arr会发生改变
j--;
}
}
}
return arr;
}
function norepeat(arr){ //第二种
arr.sort();
for(var i = 0; i < arr.length - 1; i++){
if(arr[i]==arr[i+1]){
arr.splice(i+1,1);
i--;
}
}
return arr;
}
//推荐方法
function norepeat(arr){
var obj = {};
var newArr = [];
for(var i = 0; i < arr.length; i++){
if(obj[arr[i]]==undefined){//如果一个对象的属性为undefined,证明这个属性是第一次出现
newArr.push(arr[i]);
obj[arr[i]] = 1;//下次有重复值出现时,就不在是undefined,而是1
}
}
return newArr;
}