📅  最后修改于: 2023-12-03 15:31:38.987000             🧑  作者: Mango
delete()
方法是 JavaScript WeakSet
对象的一个方法,用于删除 WeakSet
中的某个元素。
myWeakSet.delete(value);
value
:必需。要从 WeakSet
中删除的元素。true
:如果指定的元素被成功删除。false
:如果指定的元素在 WeakSet
中不存在。const mySet = new WeakSet();
const obj1 = { name: 'John' };
const obj2 = { name: 'Jane' };
mySet.add(obj1);
mySet.add(obj2);
console.log(mySet.delete(obj1)); // true
console.log(mySet.delete(obj1)); // false
在上面的示例中,我们首先创建了一个空的 WeakSet
,然后向其中添加了两个对象 obj1
和 obj2
。然后我们使用 delete()
方法从 mySet
中删除了 obj1
并检查了该元素的删除状态。最后,我们再次使用 delete()
方法删除了 obj1
并再次检查了该元素的删除状态,但这一次它返回了 false
,因为 obj1
已经不存在于 mySet
中了。
WeakSet
中的元素必须是对象。如果尝试删除一个非对象的元素,会抛出 TypeError
异常。delete()
方法会返回一个布尔值,指示指定的元素是否存在于 WeakSet
中,并成功被删除。has()
方法来检查 WeakSet
中是否存在某个元素。