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.
Die add()
-Methode von WeakSet
-Instanzen fügt ein neues Objekt am Ende dieses WeakSet
hinzu.
Probieren Sie es aus
const weakset1 = new WeakSet();
const object1 = {};
weakset1.add(object1);
console.log(weakset1.has(object1));
// Expected output: true
try {
weakset1.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)
Parameter
value
-
Muss entweder ein Objekt oder ein nicht registriertes Symbol sein. Der Wert, der der
WeakSet
-Sammlung hinzugefügt wird.
Rückgabewert
Das WeakSet
-Objekt.
Ausnahmen
TypeError
-
Wird ausgelöst, wenn
value
weder ein Objekt noch ein nicht registriertes Symbol ist.
Beispiele
Verwendung von add
js
const ws = new WeakSet();
ws.add(window); // add the window object to the WeakSet
ws.has(window); // true
// WeakSet only takes objects as arguments
ws.add(1);
// results in "TypeError: Invalid value used in weak set" in Chrome
// and "TypeError: 1 is not a non-null object" in Firefox
Spezifikationen
Specification |
---|
ECMAScript® 2025 Language Specification # sec-weakset.prototype.add |
Browser-Kompatibilität
Report problems with this compatibility data on GitHubdesktop | mobile | server | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
add |
Legend
Tip: you can click/tap on a cell for more information.
- Full support
- Full support
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.