WeakSet.prototype.has()
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.
Thehas() method ofWeakSet instances returns a boolean indicating whether the specified value exists in thisWeakSet or not.
In this article
Try it
const weakset = new WeakSet();const object1 = {};const object2 = {};weakset.add(object1);console.log(weakset.has(object1));// Expected output: trueconsole.log(weakset.has(object2));// Expected output: falseSyntax
js
has(value)Parameters
Return value
Returnstrue if the specified value exists in theWeakSet object; otherwisefalse. Always returnsfalse ifvalue is not an object or anon-registered symbol.
Examples
>Using has()
js
const ws = new WeakSet();const obj = {};ws.add(window);ws.has(window); // returns truews.has(obj); // returns false// Storing a non-registered symbolconst sym = Symbol("foo");ws.add(sym);ws.add(Symbol.iterator);Specifications
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-weakset.prototype.has> |