ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

数组去重的几种方式

2022-09-04 23:00:33  阅读:215  来源: 互联网

标签:arr return 方式 几种 item let result 数组 unique


1、利用 Map 数据结构去重

1 let arr = [1,2,3,4,3,2,3,4,6,7,6];
2      let unique = (arr)=> {
3         let seen = new Map();
4          return arr.filter((item) => {
5             return !seen.has(item) && seen.set(item,1); 
6         });
7      };
8  unique(arr);                                       

2、利用 for 嵌套 for,然后 splice 去重

 1 functionunique(arr){
 2     for(vari=0; i<arr.length; i++){
 3         for(var j=i+1; j<arr.length; j++){
 4             if(arr[i]==arr[j]) {
 5 //第一个等同于第二个,splice 方法删除第二个
 6     arr.splice(j,1); j--;
 7              }
 8         }
 9     }
10     return arr;
11  }
12                         

3、for 双重循环 通过判断第二层循环,去重的数组中是否含有该元素,如果有就退出第二 层 循环,如果没有j==result.length 就相等,然后把对应的元素添加到最后的数组里面。

 1 let arr = [1,2,3,4,3,2,3,4,6,7,6];
 2 let result = [];
 3   for(var i = 0 ; i < arr.length; i++) {
 4       for(var j = 0 ; j < result.length ; j++) {
 5                if(arr[i] === result[j]){
 6      break;
 7 
 8      };
 9  };
10         if(j == result.length){
11 result.push(arr[i]);  
12 };
13 };
14     console.log(result);   

4、利用 filter

let arr = [1,2,3,4,3,2,3,4,6,7,6]; 
    let unique = (arr) => {
        return arr.filter((item,index) => {
    return arr.indexOf(item) === index; })
}; 
    unique(arr);

 

标签:arr,return,方式,几种,item,let,result,数组,unique
来源: https://www.cnblogs.com/meirongliu/p/16656395.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有