1.利用双层for循环

let arr = [1,2,3,4,4,'hello',4,5,5,6,8,9,'hello']
let unique = (arr) => {// 前面一项for(i=0;i<arr.length;i++){// 后面一项for(j=i+1;j<arr.length;j++){if(arr[i]===arr[j]){arr.splice(j,1)     //删除重复元素j--;  //修正下标,当元素删除后,剩余元素下标依次减一}}}return arr;
}
unique(arr);
console.log(arr);

2.利用indexOf实现数组去重

let arr = [1,2,3,4,4,'hello',4,5,5,6,8,9,'hello']
let unique = (arr) => {let newArr = [];for(i=0;i<arr.length;i++){if(newArr.indexOf(arr[i])===-1){newArr.push(arr[i])}}return newArr;
}
console.log(unique(arr));

3.利用includes实现数组去重

let arr = [1,2,3,4,4,'hello',4,5,5,6,8,9,'hello']
let unique = (arr) => {let newArr = [];for(i=0;i<arr.length;i++){if(!newArr.includes(arr[i])){newArr.push(arr[i])}}return newArr
}
console.log(unique(arr));

4.使用filter实现数组去重

let arr = [1,2,3,4,4,'hello',4,5,5,6,8,9,'hello']
let unique = (arr) => {let result = arr.filter((item,index)=>{return arr.indexOf(item)===index})return result
}
console.log(unique(arr));

5.利用set实现数组去重

let arr = [1,2,3,4,4,'hello',4,5,5,6,8,9,'hello']
var set = new Set(arr);
// 将set转换为数组
let [...a] = set
console.log(a);

javascript/ES6实现数组去重的常用方法相关推荐

  1. Javascript ES6中数组去重最简便的两种方法(大概)

    1.Set 先利用Set创建类数组数据结构实例set,利用set会自动去重的特性,最后用扩展运算符将set赋值给新数组var arr = ['a', 'b', 'c', 'a']var set = n ...

  2. ES6数组去重的常用方法

    普通数组去重 数据源 const test = ['q', 'w', 'e', 'q', 'u', 'p'] 方法一 [...newSet(test)]; 方法二 Array.from(new Set ...

  3. 【算法图解|3】JavaScript 如何实现数组去重

    数组去重方法老生常谈,既然是常谈,我也来谈谈. 也许我们首先想到的是使用 indexOf 来循环判断一遍,但在这个方法之前,让我们先看看最原始的方法: var array = [1, 1, '1', ...

  4. JavaScript习题(数组去重、有序数组乱序排列)

    数组去重 Array.prototype.unique = function(){var temp = {},arr = [],len = this.length;for(var i = 0 ; i ...

  5. es6方法 数组去重 多个数组去重 数组对象去重

    1.单个数组的去重 Array.from(new Set(arr)) 2.多个数组去重 返回不同数据展示 let a = [1, 2, 3, 4] let b = [3, 4, 5] let unio ...

  6. ES6常用数组去重,数组排序

    一.数组去重 let arr = [1,2,3,1,2,3] console.log(new Set(arr)); 二. 数组排序 let arr = [1,2,3,1,2,3] // sort()方 ...

  7. JavaScript数组去重的常用方法

    方法一 创建一个数组arr2,遍历需要去重的数组arr,如果arr2里面没有这个元素就push进去. var arr = [1,2,3,1,2],arr2 = [];arr.forEach(eleme ...

  8. indexof方法_[ 翻译 ] ES6中数组去重的三种方法

    原文:How to Remove Array Duplicates in ES6 翻译:Hytonight云息 有三种方法可以过滤掉一个数组的重复元素并且返回去重后的新数组.我最喜欢使用Set,因为它 ...

  9. ES6 Set() 数组去重

    ES6 Set()去重 Set.它类似于数组,但是成员的值都是唯一的 通过add()方法向 Set 结构加入成员 let arr = [1,2,3,4,1,5,2,3]; var set2 = new ...

最新文章

  1. RDKit | 生物大分子的HELM表示法
  2. python从入门到入土表情包-Python开发个人专属表情包网站,表情在手,天下我有...
  3. 学习笔记(十九)——Python与数据库交互(mysql、redis)
  4. 云计算,大数据,5G和人工智能
  5. gba徽章机器人_徽章战士GBA攻略
  6. 置顶java[常用]-[语法]-[基础操作]
  7. 谈Elasticsearch下分布式存储的数据分布
  8. Extjs不错的博客
  9. 一个不错的局域网聊天工具之飞鸽传书下载地址
  10. python 无序列表中第k大元素_查询无序列表中第K小元素
  11. 别再只盯着国外!在集设发现了优秀设计师原创作品!
  12. JavaScript 移动和触摸框架
  13. [Objective C] 获取类和对象的运行时状态
  14. vue 插槽的版本变化1.x-2.6.0-3.x(详细)
  15. 视频解码测试软件,视频解码:视频解码性能测试_平板电脑评测-中关村在线
  16. 美图秀秀拼接渐变过渡_如何使用Web组件创建渐变过渡
  17. 计算机科学与专业大学排名,计算机科学与技术专业大学排名
  18. 【discuzx2】【家园广播】follow_feed.htm
  19. 【python报错解决】findfont: Font family [‘Arial‘] not found. Falling back to DejaVu Sans.
  20. 时间触发嵌入式系统设计模式 读书笔记

热门文章

  1. 粉红猪小妹peppa pig中英文版209集+218本绘本+音频
  2. Java基础学习——Java集合(九)Map接口、HashMap、LinkedHashMap实现类、TreeMap实现类
  3. 拷贝docker镜像到其他机器部署
  4. NOI2007.Day2.T3.追捕盗贼
  5. 北京联合大学csdn俱乐部极客公园创新大会
  6. H5指的是HTML5自适页面营销,HTML5不仅仅是营销工具
  7. android cne服务,android 自带APP 作用
  8. LaTex .bbl文件报错
  9. vscode(二)好用的Settings文件
  10. discuz发帖机-免费discuz发帖机