万象更新 Html5 - es6 基础: set

源码 https://github.com/webabcd/Html5
作者 webabcd

万象更新 Html5 - es6 基础: set

示例如下:

es6\src\basic\set.js

// set 是一个集合,先进先出,不会插入重复数据,数据支持类型的多样性
// 常规操作有 add(), delete(), has(), clear(), size 等
let mySet = new Set();


mySet.add(1);
mySet.add(2);
mySet.add("webabcd"); // 数据支持类型的多样性
mySet.add(2); // 不会插入重复数据


// 遍历
for (let value of mySet) {
    console.log(value);
}
// 遍历
mySet.forEach(function(value) {
    console.log(value);
});


// set 对象转数组
console.log([...mySet]);


// 实例化 set 对象时,初始化其数据集合
console.log(new Set(["1", "2", "3"]));


// string 转 set
console.log(new Set("webabcd"));
// 结果为 {"w", "e", "b", "a", "b", "c", "d"}


// set 可以给数组排重
console.log(new Set([1, 2, 3, 3, 2]));


let a = new Set([1, 2, 3]);
let b = new Set([4, 3, 2]);
// set 可以合并,结果排重
console.log(new Set([...a, ...b]));
// set 可以合并,结果取交集(通过 array 的 filter 实现)
console.log(new Set([...a].filter(p => b.has(p))));

源码 https://github.com/webabcd/Html5
作者 webabcd

posted @ 2024-09-24 11:21  webabcd  阅读(8)  评论(0编辑  收藏  举报