Set.prototype.union()

基线 2024

新可用

2024年6月起,此功能可在最新的设备和浏览器版本中使用。此功能可能在较旧的设备或浏览器中无法使用。

union()Set 实例的一种方法,它接收一个集合并返回一个新的集合,其中包含此集合和给定集合中存在的元素。

语法

js
union(other)

参数

other

一个 Set 对象,或 类似集合 的对象。

返回值

一个新的 Set 对象,其中包含此集合和 other 集合中存在的元素。

描述

在数学符号中,并集定义为

A B = { x x A  或  x B } A\cup B = \{x\midx\in A\text{ or }x\in B\}

并使用韦恩图

A Venn diagram where two circles overlap. The symmetric difference of A and B is the region contained by either or both circles.

union() 接受 类似集合 的对象作为 other 参数。它要求 this 为一个实际的 Set 实例,因为它直接检索存储在 this 中的基础数据,而无需调用任何用户代码。然后,它通过调用 otherkeys() 方法迭代 other,并使用 this 中的所有元素构建一个新集合,然后是 other 中不在 this 中的所有元素。

返回集合中元素的顺序首先是 this 中的元素,然后是 other 中的元素。

示例

使用 union()

以下示例计算偶数集合(<10)和完全平方数集合(<10)之间的并集。结果是偶数或完全平方数(或两者皆是)的数字集合。

js
const evens = new Set([2, 4, 6, 8]);
const squares = new Set([1, 4, 9]);
console.log(evens.union(squares)); // Set(6) { 2, 4, 6, 8, 1, 9 }

规范

规范
Set 方法
# sec-set.prototype.union

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅