JavaScript数组去重
第一种方法:
思路:
1.创建一个新的数组存放结果
2.创建一个空对象,
3.将数组中的元素作为空对象的属性并对其赋值,每次取出一个元素与对象进行对比,然后到对象中去访问这个属性,
如果能访问到值,则说明重复。则把它存放到结果数组中。
function delRepeat(arr) {
var arrNew=[];
var o={};
for (var i = 0; i < arr.length; i++) {
var key=arr[i];
if(!o[key]){
o[key]=1;
arrNew.push(key);
}
}
return arrNew;
}
var arr=[1,2,2,1,5,6,6,8];
console.log(delRepeat(arr));
第二种方法:使用ES5中的indexOf方法
function delRepeat( array ) { var resArray = [], i = 0; for ( ; i < array.length; i++ ) { if ( resArray.indexOf( array[ i ] ) == -1 ) { resArray.push( array[ i ] ); } } return resArray; }

浙公网安备 33010602011771号