HTTP/2 302
x-cloud-trace-context: 292416404c1fbffd9319c01a0dd50fae
location: /en-US/docs/Web/JavaScript/Reference/Global_Objects/Set/intersection
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 10:19:58 GMT
x-served-by: cache-bfi-kbfi7400022-BFI, cache-bfi-kbfi7400056-BFI, cache-sin-wsss1830065-SIN, cache-bom-vanm7210073-BOM
x-cache: MISS, MISS, MISS, MISS
x-cache-hits: 0, 0, 0, 0
x-timer: S1766917198.235237,VS0,VE313
vary: Accept
content-length: 90
HTTP/2 200
x-content-type-options: nosniff
cache-control: public, max-age=3600
via: 1.1 google, 1.1 varnish, 1.1 varnish, 1.1 varnish, 1.1 varnish
x-cloud-trace-context: 4ba1cc09b0df755cef4ffe0142b7e524
server: Google Frontend
last-modified: Sun, 28 Dec 2025 01:10:32 GMT
referrer-policy: strict-origin-when-cross-origin
origin-trial: AxVILwizhbMjxFeHOn1P3R8niO1RJY/smaK4B4d1rLzc1gTaxtXMSaTi+FoigYgCw40uFRDwFcEAeqDR+vVLOW4AAABfeyJvcmlnaW4iOiJodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZyIsImZlYXR1cmUiOiJQcml2YXRlQXR0cmlidXRpb25WMiIsImV4cGlyeSI6MTc0MjA3OTYwMH0=
content-type: text/html
etag: "67812262e05ed8c2f4152f1e8c57596a"
strict-transport-security: max-age=63072000
expires: Sun, 28 Dec 2025 09:56:28 GMT
x-goog-meta-goog-reserved-file-mtime: 1766883288
x-goog-storage-class: STANDARD
x-frame-options: DENY
x-goog-metageneration: 1
x-goog-hash: crc32c=4TJz9Q==, md5=Z4EiYuBe2ML0FS8ejFdZag==
x-guploader-uploadid: AHVrFxOt_j6J7kipd8QBrNJQFhitRnqknQ2kDgZdPY4ONk5RxHuZlE2kZf5va52wBtSg8GZhWLcRBQk
x-goog-stored-content-encoding: identity
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-generation: 1766884232614798
x-goog-stored-content-length: 151245
content-encoding: gzip
accept-ranges: bytes
age: 883
date: Sun, 28 Dec 2025 10:19:58 GMT
x-served-by: cache-bfi-kbfi7400024-BFI, cache-bfi-kbfi7400112-BFI, cache-sin-wsss1830021-SIN, cache-bom-vanm7210073-BOM
x-cache: MISS, MISS, HIT, MISS
x-cache-hits: 0, 0, 0, 0
x-timer: S1766917199.561581,VS0,VE254
vary: Accept-Encoding
content-length: 20428
Set.prototype.intersection() - JavaScript | MDN
other
A Set object, or set-like object.
A new Set object containing elements in both this set and the other set.
In mathematical notation, intersection is defined as:
A ∩ B = { x ∊ A ∣ x ∊ B } A\cap B = \{x\in A\mid x\in B\}
And using Venn diagram:
intersection() 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, its behavior depends on the sizes of this and other:
If there are more elements in this than other.size, then it iterates over other by calling its keys() method, and constructs a new set with all elements produced that are also present in this.
Otherwise, it iterates over the elements in this, and constructs a new set with all elements e in this that cause other.has(e) to return a truthy value.
Because of this implementation, the efficiency of intersection() mostly depends on the size of the smaller set between this and other (assuming sets can be accessed in sublinear time). The order of elements in the returned set is the same as that of the smaller of this and other.
The following example computes the intersection between the set of odd numbers (<10) and the set of perfect squares (<10). The result is the set of odd numbers that are perfect squares.
const odds = new Set([1, 3, 5, 7, 9]);
const squares = new Set([1, 4, 9]);
console.log(odds.intersection(squares)); // Set(2) { 1, 9 }
Enable JavaScript to view this browser compatibility table.