js实现数组去重(方式大汇总)

Posted web-record

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js实现数组去重(方式大汇总)相关的知识,希望对你有一定的参考价值。

方法一:创建新数组

   var arr = [1,23,1,1,1,3,23,5,6,7,9,9,8,5];
 3 Array.prototype.reArr = function(){
 4     var newArr = [];
 5     for(var i = 0; i < this.length; i++){
 6         if(newArr.indexOf(this[i])== -1){
 7             newArr.push(this[i]);
 8         }
 9     }
10     return newArr;
11 }
12 var arr2 = arr.reArr();
13 console.log(arr); //[ 1, 23, 1, 1, 1, 3, 23, 5, 6, 7, 9, 9, 8, 5 ]
14 console.log(arr2);//[ 1, 23, 3, 5, 6, 7, 9, 8 ]

方法二:利用对象属性存在的特性,如果没有该属性则存入新数组。

function unique3(arr){
 var res = [];
 var obj = {};
 for(var i=0; i<arr.length; i++){
  if( !obj[arr[i]] ){
   obj[arr[i]] = 1;
   res.push(arr[i]);
  }
 } 
 return res;
}
 
console.log(‘------------方法三---------------‘);
 
console.log(unique3([1,1,2,3,5,3,1,5,6,7,4]));

以上是关于js实现数组去重(方式大汇总)的主要内容,如果未能解决你的问题,请参考以下文章

JS 数组常见操作汇总,数组去重降维排序多数组合并实现思路整理

JS数组去重的方法汇总

常用算法JS实现汇总

js数组并集,交集,差集

js实现数组去重的方式(7种)

JS实现数组去重方法大总结