← 返回首页
Set.prototype.delete() - JavaScript | MDN

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

Set.prototype.delete()

Baseline 広く利用可能

この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2015年7月以降、すべてのブラウザーで利用可能です。

delete()Set インターフェイスのメソッドで、指定された値がこの集合にあれば、取り除きます。

目次

試してみましょう

const set = new Set(); set.add({ x: 10, y: 20 }).add({ x: 20, y: 30 }); // `x > 10` であるすべての点を削除 set.forEach((point) => { if (point.x > 10) { set.delete(point); } }); console.log(set.size); // 予想される結果: 1

構文

js
setInstance.delete(value)

引数

value

Set から取り除く要素の値です。

返値

true ならば value が既に Set に存在していたことを表します。そうでなければ false を返します。

delete() メソッドの使用

js
const mySet = new Set(); mySet.add("foo"); mySet.delete("bar"); // 削除するべき要素が見つからなければ false を返す mySet.delete("foo"); // 正常に要素を削除出来れば true を返す mySet.has("foo"); // 存在しない要素を確認すると false を返す

Set からオブジェクトを削除する

オブジェクト同士は参照で比較されるため、元のオブジェクトへの参照を保持していない場合は、個々のプロパティをチェックして削除する必要があります。

js
const setObj = new Set(); // 新しいセットを作成 setObj.add({ x: 10, y: 20 }); // セットにオブジェクトを追加 setObj.add({ x: 20, y: 30 }); // セットにオブジェクトを追加 // `x > 10` のポイントを削除 setObj.forEach((point) => { if (point.x > 10) { setObj.delete(point); } });

仕様書

仕様書
ECMAScript® 2027 Language Specification
# sec-set.prototype.delete

ブラウザーの互換性

ブラウザー互換性一覧表を表示するには、JavaScript を有効にしてください。

関連情報