探索JavaScript中的7个新Set方法
目录
文章目录隐藏
Set
从 ES6 就已经存在了,但通常它们只是用来确保列表中没有重复项。
然而,随着这 7 个即将推出的内置 Set
方法,我们可能会发现自己更加频繁地使用它们。
1. union()
Set
的新方法 union()
为我们提供了两个集合中所有唯一的元素。
并且由于它是不可变的并返回副本,你可以无限链式调用它:
const setA = new Set([1, 2, 3]); const setB = new Set([3, 4, 5]); const unionSet = setA.union(setB); // Set {1, 2, 3, 4, 5}
2. intersection()
哪些元素同时存在于两个集合中?
const setA = new Set([1, 2, 3]); const setB = new Set([2, 3, 4]); const intersectionSet = setA.intersection(setB); // Set {2, 3}
3. difference()
difference()
方法执行 A – B,返回集合 A 中不在集合 B 中的所有元素:
const setA = new Set([1, 2, 3]); const setB = new Set([2, 3, 4]); const differenceSet = setA.difference(setB); // Set {1}
4. symmetricDifference()
正如 symmetric
所暗示的那样,此方法双向获取集合差集。即 (A — B) U (B — A)
。
所有只存在于其中一个集合中的元素:
const setA = new Set([1, 2, 3]); const setB = new Set([3, 4, 5]); const symmetricDifferenceSet = setA.symmetricDifference(setB); // Set {1, 2, 4, 5}
5. isSubsetOf()
其目的很明确:检查一个集合的所有元素是否都在另一个集合中。
const setA = new Set([1, 2]); const setB = new Set([1, 2, 3]); const isSubset = setA.isSubsetOf(setB); // true
6. isSupersetOf()
检查一个集合是否包含另一个集合中的所有元素:这与 isSubsetOf()
中交换两个集合的作用相同:
const setA = new Set([1, 2, 3]); const setB = new Set([1, 2]); const isSuperset = setA.isSupersetOf(setB); // true
7. isDisjointFrom()
这些集合是否没有任何共同元素?
const setA = new Set([1, 2, 3]); const setB = new Set([4, 5, 6]); const isDisjoint = setA.isDisjointFrom(setB); // true
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系maynote@foxmail.com处理
码云笔记 » 探索JavaScript中的7个新Set方法
码云笔记 » 探索JavaScript中的7个新Set方法