HTTP/2 302
x-cloud-trace-context: aea6f161e22752bb4aea574778c6cc57
location: /en-US/docs/Web/JavaScript/Reference/Global_Objects/Set/union
via: 1.1 google, 1.1 varnish, 1.1 varnish, 1.1 varnish, 1.1 varnish
accept-ranges: bytes
cache-control: no-store
server: Google Frontend
content-type: text/plain; charset=utf-8
date: Sun, 28 Dec 2025 04:32:48 GMT
x-served-by: cache-bfi-kbfi7400048-BFI, cache-bfi-kbfi7400074-BFI, cache-sin-wsss1830027-SIN, cache-bom-vanm7210068-BOM
x-cache: MISS, MISS, MISS, MISS
x-cache-hits: 0, 0, 0, 0
x-timer: S1766896368.007032,VS0,VE321
vary: Accept
content-length: 83
HTTP/2 200
x-goog-stored-content-length: 151037
x-goog-metageneration: 1
referrer-policy: strict-origin-when-cross-origin
expires: Sun, 28 Dec 2025 05:32:48 GMT
x-goog-hash: crc32c=krT0Fg==, md5=iv6uIegtR2iLVviDvkGfUw==
content-security-policy: default-src 'self'; script-src 'report-sample' 'self' 'wasm-unsafe-eval' https://www.google-analytics.com/analytics.js https://*.googletagmanager.com assets.codepen.io production-assets.codepen.io https://js.stripe.com 'sha256-XNBp89FG76amD8BqrJzyflxOF9PaWPqPqvJfKZPCv7M=' 'sha256-YCNoU9DNiinACbd8n6UPyB/8vj0kXvhkOni9/06SuYw=' 'sha256-PZjP7OR6mBEtnvXIZfCZ5PuOlxoDF1LDZL8aj8c42rw='; script-src-elem 'report-sample' 'self' 'wasm-unsafe-eval' https://www.google-analytics.com/analytics.js https://*.googletagmanager.com assets.codepen.io production-assets.codepen.io https://js.stripe.com 'sha256-XNBp89FG76amD8BqrJzyflxOF9PaWPqPqvJfKZPCv7M=' 'sha256-YCNoU9DNiinACbd8n6UPyB/8vj0kXvhkOni9/06SuYw=' 'sha256-PZjP7OR6mBEtnvXIZfCZ5PuOlxoDF1LDZL8aj8c42rw='; style-src 'report-sample' 'self' 'unsafe-inline'; object-src 'none'; base-uri 'self'; connect-src 'self' developer.allizom.org bcd.developer.allizom.org bcd.developer.mozilla.org updates.developer.allizom.org updates.developer.mozilla.org https://*.google-analytics.com https://*.analytics.google.com https://*.googletagmanager.com https://incoming.telemetry.mozilla.org https://observatory-api.mdn.allizom.net https://observatory-api.mdn.mozilla.net https://api.github.com/search/issues stats.g.doubleclick.net https://api.stripe.com; font-src 'self'; frame-src 'self' mdn.github.io *.mdnplay.dev *.mdnyalp.dev *.play.test.mdn.allizom.net https://v2.scrimba.com https://scrimba.com jsfiddle.net www.youtube-nocookie.com codepen.io survey.alchemer.com https://js.stripe.com; img-src 'self' data: *.githubusercontent.com *.googleusercontent.com *.gravatar.com mozillausercontent.com firefoxusercontent.com profile.stage.mozaws.net profile.accounts.firefox.com developer.mozilla.org mdn.dev wikipedia.org upload.wikimedia.org https://mdn.github.io/shared-assets/ https://mdn.dev/ https://*.google-analytics.com https://*.googletagmanager.com www.gstatic.com; manifest-src 'self'; media-src 'self' archive.org videos.cdn.mozilla.net https://mdn.github.io/shared-assets/; child-src 'self'; worker-src 'self';
x-goog-meta-goog-reserved-file-mtime: 1766883288
x-frame-options: DENY
x-goog-stored-content-encoding: identity
x-goog-generation: 1766884232683203
via: 1.1 google, 1.1 varnish, 1.1 varnish, 1.1 varnish, 1.1 varnish
server: Google Frontend
origin-trial: AxVILwizhbMjxFeHOn1P3R8niO1RJY/smaK4B4d1rLzc1gTaxtXMSaTi+FoigYgCw40uFRDwFcEAeqDR+vVLOW4AAABfeyJvcmlnaW4iOiJodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZyIsImZlYXR1cmUiOiJQcml2YXRlQXR0cmlidXRpb25WMiIsImV4cGlyeSI6MTc0MjA3OTYwMH0=
last-modified: Sun, 28 Dec 2025 01:10:32 GMT
x-goog-storage-class: STANDARD
x-cloud-trace-context: 4cfdba705ee98ca7555d1b9dcd92cf4d
x-content-type-options: nosniff
content-type: text/html
etag: "8afeae21e82d47688b56f883be419f53"
cache-control: public, max-age=3600
x-guploader-uploadid: AHVrFxPkxGTf-PrAINQzk-mOAhGzvHIcz1DsFJCawBt8OcsNr6X78Q-bKJckPM4sIDAX9hyT
strict-transport-security: max-age=63072000
content-encoding: gzip
accept-ranges: bytes
age: 0
date: Sun, 28 Dec 2025 04:32:48 GMT
x-served-by: cache-bfi-kbfi7400030-BFI, cache-bfi-kbfi7400118-BFI, cache-sin-wsat1880024-SIN, cache-bom-vanm7210068-BOM
x-cache: MISS, MISS, MISS, MISS
x-cache-hits: 0, 0, 0, 0
x-timer: S1766896368.347369,VS0,VE529
vary: Accept-Encoding
content-length: 20355
Set.prototype.union() - JavaScript | MDN
other
A Set object, or set-like object.
A new Set object containing elements which are in either or both of this set and the other set.
In mathematical notation, union is defined as:
A ∪ B = { x ∣ x ∊ A or x ∊ B } A\cup B = \{x\mid x\in A\text{ or }x\in B\}
And using Venn diagram:
union() accepts set-like objects as the other parameter. It requires this to be an actual Set instance, because it directly retrieves the underlying data stored in this without invoking any user code. Then, it iterates over other by calling its keys() method, and constructs a new set with all elements in this, followed by all elements in other that are not present in this.
The order of elements in the returned set is first those in this followed by those in other.
The following example computes the union between the set of even numbers (<10) and the set of perfect squares (<10). The result is the set of numbers that are either even or a perfect square, or both.
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 }
Enable JavaScript to view this browser compatibility table.