Set.prototype.delete()

delete() メソッドは、Set オブジェクトから特定の要素を取り除きます。

構文

mySet.delete(value);

引数

value
Set オブジェクトから取り除く要素の値です。

戻り値

Set オブジェクト内の要素が正常に削除されたら、true を返します。さもなければ、false を返します。

delete メソッドを使う

var mySet = new Set();
mySet.add('foo');

mySet.delete('bar'); // 削除するべき要素が見つからなければ false を返す
mySet.delete('foo'); // 正常に要素を削除出来れば true を返す

mySet.has('foo');    // 存在しない要素を確認すると false を返す

セットからオブジェクトを削除する方法を以下で確認してみましょう。

const setObj = new Set(); // 新しいセットを作成

setObj.add({x: 10, y: 20}); // セットにオブジェクトを追加

setObj.add({x: 20, y: 30}); // セットにオブジェクトを追加

// `x > 10` のポイントを削除
setObj.forEach(function(point){
  if(point.x > 10){
    setObj.delete(point)
  }
})

仕様

仕様書 策定状況 コメント
ECMAScript 2015 (6th Edition, ECMA-262)
Set.prototype.delete の定義
標準 初期定義
ECMAScript (ECMA-262)
Set.prototype.delete の定義
現行の標準

ブラウザー実装状況

Update compatibility data on GitHub
デスクトップモバイルサーバー
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung InternetNode.js
deleteChrome 完全対応 38Edge 完全対応 12Firefox 完全対応 13IE 完全対応 11Opera 完全対応 25Safari 完全対応 8WebView Android 完全対応 38Chrome Android 完全対応 38Firefox Android 完全対応 14Opera Android 完全対応 25Safari iOS 完全対応 8Samsung Internet Android 完全対応 3.0nodejs 完全対応 0.12
完全対応 0.12
完全対応 0.10
無効
無効 From version 0.10: this feature is behind the --harmony runtime flag.

凡例

完全対応  
完全対応
ユーザーが明示的にこの機能を有効にしなければなりません。
ユーザーが明示的にこの機能を有効にしなければなりません。

関連情報