ES6学习——集合(Collections):Set 应用示例

来源:互联网 发布:java获取服务器外网ip 编辑:程序博客网 时间:2024/05/17 05:55

这篇文章看一些Set的使用例子。


1)遍历Set的几种方法

let set = new Set(['red', 'green', 'blue']);for (let x of set) {    console.log(x);}[...set];[...set.values()];[...set.keys()];[...set.entries()];


2)利用Set删除数组重复元素

let arr = [3, 5, 2, 2, 5, 5];let unique = [...new Set(arr)]; // [3, 5, 2]


3)实现数组的map,filter方法

let set = new Set([1, 2, 3]);set = new Set([...set].map(x => x * 2));

let set = new Set([1, 2, 3, 4, 5]);set = new Set([...set].filter(x => (x % 2) == 0));


4)两个集合的合集,即Union (a ∪ b)

let a = new Set([1,2,3]);let b = new Set([4,3,2]);let union = new Set([...a, ...b]);


5)两个集合的交集,即Intersection (a ∩ b)

let a = new Set([1,2,3]);let b = new Set([4,3,2]);let intersection = new Set([...a].filter(x => b.has(x)));


6)两个集合的差集,即Difference (a-b)

let a = new Set([1,2,3]);let b = new Set([4,3,2]);let difference = new Set([...a].filter(x => !b.has(x)));



*以上全部代码在Chrome 47下通过测试

0 0