ES6介绍之Set

218 阅读1分钟

ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。

const a = new Set() 
// Set函数可以接受一个数组(或者具有 iterable 接口的其他数据结构)作为参数,用来初始化
const b = new Set([1,2,3,3]
[...b]
// [1, 2, 3]


另外,两个对象总是不相等的。let set = new Set();

set.add({});
set.size // 1

set.add({});
set.size // 2
上面代码表示,由于两个空对象不相等,所以它们被视为两个值。
// 对象是按引用类型来判断的,也就是说
let set = new Set();

set.add({});
set.size // 1

set.add({});C

let obj = {}
let obj2 = obj
set.add(obj)
set.size // 3
set.add(obj2)
set.size // 3