ES6 数组去重的最佳实践:Set 结合 Array.from() | 拓展运算符结合 Set

简介: 一直想写个ES6特性的系列文章,整理了一段时间,不想写概而全的纯理论,只想写一些贴近工作的,最常用到的,比如块级作用域,箭头函数,字符串模板等等---敬请期待上面那两个方法并不是万能的,只能作为常规的数组去重,因为涉及到对象或者多维数组的去重,还是需要其他一些方法来辅助,该遍历遍历,该比较还是得比较。。。。


前言


ES5及之前大多都是用遍历和算法来实现数组去重,在ES6有一个更为简便的方式。ES6之Set,Array.from, ...


实践


1. Set + Array.from()


这里使用的是Set的一个特性,集合中不会包含重复项。结合Array.from()实现数组去重 ,看图



从图中看出,经过转化的数组是可以正常数组操作的。那么多赋值可以精简为两条代码或走一条;


var set1 = Array.from(new Set([1,1,2,2,33,'33',44,'44'
]))


2. …[拓展运算符] + Set



var tt  = [...new Set([5,5,6,6,8,])] 


总结


一直想写个ES6特性的系列文章,整理了一段时间,不想写概而全的纯理论,只想写一些贴近工作的,
最常用到的,比如块级作用域,箭头函数,字符串模板等等---敬请期待
上面那两个方法并不是万能的,只能作为常规的数组去重,因为涉及到对象或者多维数组的去重,
还是需要其他一些方法来辅助,该遍历遍历,该比较还是得比较。。。。
目录
相关文章
|
6天前
|
存储 JavaScript 索引
js开发:请解释什么是ES6的Map和Set,以及它们与普通对象和数组的区别。
ES6引入了Map和Set数据结构。Map的键可以是任意类型且有序,与对象的字符串或符号键不同;Set存储唯一值,无重复。两者皆可迭代,支持for...of循环。Map有get、set、has、delete等方法,Set有add、delete、has方法。示例展示了Map和Set的基本操作。
17 3
|
7月前
|
存储 JSON 对象存储
ES6之Set集合(通俗易懂,含实践)
ES6之Set集合(通俗易懂,含实践)
|
3月前
|
存储 JavaScript
【ES6系列第二篇】适用JS初学者的Set对象和Map对象学习笔记
【ES6系列第二篇】适用JS初学者的Set对象和Map对象学习笔记
24 0
|
3月前
|
存储 前端开发 JavaScript
【面试题】ES6 如何将 Set 转化为数组
【面试题】ES6 如何将 Set 转化为数组
数组去重-set
ES6 提供了新的数据结构 Set 它类似于数组,但是成员的值都是唯一的,没有重复的值 (set本身是一个构造函数,用来生成 Set 数据结构)
|
4月前
ES6学习(七)—Set 和 Map 数据结构
ES6学习(七)—Set 和 Map 数据结构
|
5月前
|
存储
ES6中Set集合
ES6中Set集合
42 0
|
7月前
ES6: Set数据结构
ES6: Set数据结构
26 0