Set.prototype.delete()

基线 广泛可用

此功能已久,可在许多设备和浏览器版本中使用。它自 2015 年 7 月.

报告反馈

试一试

语法

The delete() 方法 of Set instances removes a specified value from this set, if it is in the set.
setInstance.delete(value)

js

参数

value

要从 Set 中删除的值。

返回值

示例

如果 value 已经在 Set 中,则返回 true;否则返回 false

The delete() 方法 of Set instances removes a specified value from this set, if it is in the set.
const mySet = new Set();
mySet.add("foo");

console.log(mySet.delete("bar")); // false; no "bar" element found to be deleted.
console.log(mySet.delete("foo")); // true; successfully removed.

console.log(mySet.has("foo")); // false; the "foo" element is no longer present.

使用 delete() 方法

从集合中删除对象

The delete() 方法 of Set instances removes a specified value from this set, if it is in the set.
const setObj = new Set(); // Create a new set.

setObj.add({ x: 10, y: 20 }); // Add object in the set.

setObj.add({ x: 20, y: 30 }); // Add object in the set.

// Delete any point with `x > 10`.
setObj.forEach((point) => {
  if (point.x > 10) {
    setObj.delete(point);
  }
});

规范

由于对象按引用进行比较,因此您必须通过检查各个属性来删除对象,如果您没有对原始对象的引用。
规范
# ECMAScript 语言规范

浏览器兼容性

sec-set.prototype.delete

另请参阅