Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. JavaScript
  3. Reference
  4. Standard built-in objects
  5. WeakSet
  6. add()

WeakSet.prototype.add()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨September 2015⁩.

Theadd() method ofWeakSet instances inserts the specified value into this set, if it is not already present.

Try it

const weakset = new WeakSet();const object = {};weakset.add(object);console.log(weakset.has(object));// Expected output: truetry {  weakset.add(1);} catch (error) {  console.log(error);  // Expected output (Chrome): TypeError: Invalid value used in weak set  // Expected output (Firefox): TypeError: WeakSet value must be an object, got 1  // Expected output (Safari): TypeError: Attempted to add a non-object key to a WeakSet}

Syntax

js
add(value)

Parameters

value

The value to add to theWeakSet object. Must be either an object or anon-registered symbol. Objects are compared byreference, not by value.

Return value

TheWeakSet object.

Exceptions

TypeError

Thrown ifvalue is not an object or anon-registered symbol.

Examples

Using add()

js
const ws = new WeakSet();ws.add(window); // add the window object to the WeakSetws.has(window); // true// WeakSet only takes objects as argumentsws.add(1);// results in "TypeError: Invalid value used in weak set" in Chrome// and "TypeError: 1 is not a non-null object" in Firefox

Specifications

Specification
ECMAScript® 2026 Language Specification
# sec-weakset.prototype.add

Browser compatibility

See also

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp