WeakSet.prototype.delete()

WeakSet 实例的 delete() 方法从该 WeakSet 对象中删除指定的元素。

尝试一下

语法

js
weakSetInstance.delete(value)

参数

value

要从 WeakSet 对象中删除的值。

返回值

如果成功在 WeakSet 对象中删除了元素,则返回 true。如果未在 WeakSet 中找到该 value,则返回 false。如果 value 不是对象或非全局注册的符号,则始终返回 false

示例

使用 delete() 方法

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

ws.add(window);

ws.delete(obj); // 返回 false。没有找到要删除的对象。
ws.delete(window); // 返回 true。成功删除。

ws.has(window); // 返回 false。WeakMap 中已经不存在 window 对象。

规范

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

浏览器兼容性

BCD tables only load in the browser

参见