Spec-Zone.ru › JavaScript

Set.prototype.union()

Базовый уровень Впервые доступно

Эта функция работает на последних устройствах и версиях браузеров. Эта функция может не работать на старых устройствах или версиях браузеров. Она доступна во всех браузерах с июня 2024 года.

Метод union() экземпляров Set принимает множество и возвращает новое множество, содержащее элементы, которые присутствуют либо в этом множестве, либо в заданном множестве, либо в обоих.

Синтаксис

union(other)

Параметры

other
Объект Set, или множество-подобный объект.

Возвращаемое значение

Новый объект Set, содержащий элементы, которые присутствуют либо в этом множестве, либо в множестве other, либо в обоих.

Описание

В математической нотации объединение определяется как:

A∪B={x∣x∊A or x∊B}A\cup B = \\{x\mid x\in A\text{ or }x\in B\\}

Используя диаграмму Венна:

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

union() принимает множество-подобные объекты в качестве параметра other. Он требует, чтобы this был фактическим экземпляром Set, потому что он напрямую извлекает базовые данные, хранящиеся в this, без вызова какого-либо пользовательского кода. Затем он выполняет итерацию по other, вызывая его метод keys(), и создает новое множество со всеми элементами в this, за которыми следуют все элементы в other, которые отсутствуют в this.

Порядок элементов в возвращаемом множестве — сначала те, что в this, за которыми следуют те, что в other.

Примеры

Использование union()

Следующий пример вычисляет объединение множества четных чисел (<10) и множества полных квадратов (<10). Результатом является множество чисел, которые являются либо четными, либо полными квадратами, либо и теми, и другими.

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 }

Спецификации

Спецификация
ECMAScript® 2027 Language Specification
# sec-set.prototype.union

Совместимость с браузерами

Desktop Mobile Server
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari on iOS Samsung Internet WebView Android WebView on iOS Bun Deno Node.js
union
122
122
127
108
17
122
127
81
17
26.0
122
17
1.0.0
1.42
22.0.0

Смотрите также

  • Полифилл Set.prototype.union в core-js
  • Полифилл es-shims Set.prototype.union
  • Set.prototype.difference()
  • Set.prototype.intersection()
  • Set.prototype.isDisjointFrom()
  • Set.prototype.isSubsetOf()
  • Set.prototype.isSupersetOf()
  • Set.prototype.symmetricDifference()

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set/union

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API