首页 > 编程语言 > 详细

数组去重的几种方式

时间:2021-08-30 09:43:06      阅读:18      评论:0      收藏:0      [点我收藏+]

es6中的Set方法(根据Set的值不能重复的特性)

var arr = [1,2,3,4,5,6,1,2,3]

var list =new Set(arr);            //将arr放入Set方法中使arr中没有重复的值

var arr2 = Array from(list)         //此时将该字符串转化成数组并打印

console.log(arr2);

 

 

利用indexOf的特性将数组中一个个比较去重

var arr = [2, 8, 2, 5, 0, 7, 5, 0, 5, 2, 6, 7, 2];   
    var newArr = [];                                        //设置一个新的空数组用来遍历后往里传值
    for (var i = 0; i < arr.length; i++) {             //将原来的数组遍历
      if (newArr.indexOf(arr[i]) == -1) {           //判断如果空数组中穿的值在遍历过程中没有就进行添加
        newArr.push(arr[i]);
      }
    }
    console.log(newArr);

 

 

传统字体遍历方法

var arr = [1, 1, 2, 3, 3, 2, 1, 1, 3, 5];    
    var newArr = [];                              //设置一个新的空数组
    for (var i = 0; i < arr.length; i++) {    //遍历原数组
      var flag = true;                              //给一个变量赋值true,用作if循环中的
      for (var j = 0; j < newArr.length; j++) {   //遍历一下新的空数组 让原数组遍历的元素与空数组进行比较
        if (arr[i] == newArr[j]) {                   //if语句进行筛选,空数组中与原数组中相同的值给他pass掉
          flag = false; 
          break;
        }
      }
       if (flag) {
         newArr.push(arr[i]);                      // 往空数组中进行添加元素
       }
     }
 console.log(newArr);

数组去重的几种方式

原文:https://www.cnblogs.com/yunixiangshi/p/15195385.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!