Spec-Zone.ru › JavaScript

Set.prototype.delete()

Базовый уровень Широко доступен

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с июля 2015 года.

Метод delete() экземпляров Set удаляет указанное значение из данного набора, если оно присутствует в наборе.

Попробовать

const set = new Set();
set.add({ x: 10, y: 20 }).add({ x: 20, y: 30 });

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

console.log(set.size);
// Expected output: 1

Синтаксис

setInstance.delete(value)

Параметры

value
Значение для удаления из объекта Set. Объекты сравниваются по ссылке, а не по значению.

Возвращаемое значение

true, если значение из объекта Set было успешно удалено. false, если значение не найдено в Set.

Примеры

Использование delete()

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.

Удаление объекта из набора

Поскольку объекты сравниваются по ссылке, вам придется удалять их, проверяя отдельные свойства, если у вас нет ссылки на исходный объект.

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® 2027 Language Specification
# sec-set.prototype.delete

Совместимость с браузерами

Десктоп Мобильные устройства Сервер
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari on iOS Samsung Internet WebView Android WebView on iOS Bun Deno Node.js
delete
38
12
13
25
8
38
14
25
8
3.0
38
8
1.0.0
1.0
0.12.0

Смотрите также

  • Set
  • Set.prototype.add()
  • Set.prototype.clear()
  • Set.prototype.has()

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set/delete

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API