WeakSet.prototype.delete() - JavaScript | MDN

Try it

const weakset = new WeakSet();
const object = {};

weakset.add(object);

console.log(weakset.has(object));
// Expected output: true

weakset.delete(object);

console.log(weakset.has(object));
// Expected output: false

Syntax

js

weakSetInstance.delete(value)

Parameters

value

The value to remove from the WeakSet object. Objects are compared by reference, not by value.

Return value

true if a value in the WeakSet object has been removed successfully. false if the value is not found in the WeakSet. Always returns false if value is not an object or a non-registered symbol.

Examples

Using delete()

js

const ws = new WeakSet();
const obj = {};

ws.add(window);

ws.delete(obj); // Returns false. No obj found to be deleted.
ws.delete(window); // Returns true. Successfully removed.

ws.has(window); // Returns false. The window is no longer present in the WeakSet.

Specifications

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

Browser compatibility

See also

Help improve MDN

Learn how to contribute

This page was last modified on by MDN contributors.