ES6 Set

一、基本用法

Set 类似于数组,但是成员的值都是唯一的,没有重复。

Set本身是一个构造函数,用来生成Set数据结构

const s = new Set();
[2, 3, 5, 4, 5, 2, 2].forEach((x) => s.add(x));

for(let i of s) {
  console.log(i);
}
// 2 3 5 4

Set函数可以接受一个数组(或者具有iterable接口的其他数据结构)作为参数,用来初始化。

  • Set函数接受数组作为参数
// 例一
const set = new Set([1, 2, 3, 4, 4]);
[...set] 
// [1, 2, 3, 4]
// 例二
const items = new Set([1, 2, 3, 4, 5, 5, 5, 5]);
items.size // 5
  • Set函数接受类似数组的对象作为参数
// 例三
function divs () {
  return [...document.querySelectorAll('div')];
}

const set = new Set(divs());
set.size // 56

// 类似于
divs().forEach(div => set.add(div));
set.size // 56

Copyright: 采用 知识共享署名4.0 国际许可协议进行许可

Links: https://demongao.com/2018/02/es6set

Buy me a cup of coffee ☕.