TECH I.S.

JavaScript Set

JavaScriptのSetは、一意の値のコレクションです。

各値はセット内で1度しか出現しません。

Setは、任意のデータ型の任意の値を保持できます。


メソッドの設定

Method 説明
new Set()新しいセットを作成
add()Set に新しい要素を追加
delete()Setから要素を削除
has()値が存在する場合はtrueを返却
clear()Setからすべての要素を削除
forEach()各要素のコールバックを呼び出す
values()Set内のすべての値を持つIteratorを返却
key()values()と同じ
entries()Setの[value,value]ペアを持つIteratorを返却
Property 説明
sizeSet内の要素数を返却

Setの作成方法

次の方法でSetを作成できます。

  • new Set()へ配列を渡す
  • 新しいSetを作成して、add()を使用して値を追加する
  • 新しいSetを作成して、add()を使用して変数を追加する

new Set()メソッド

new Set()コンストラクタにArrayを渡します。

// Setを作成 const letters = new Set(["a","b","c"]);

自分で試してみる»

Set を作成し、リテラル値を追加します。

// Setを作成 const letters = new Set(); // Setへの値の追加 letters.add("a"); letters.add("b"); letters.add("c");

自分で試してみる»

Set を作成し、変数を追加します。

// 変数を作成 const a = "a"; const b = "b"; const c = "c"; // Setを作成 const letters = new Set(); // Setに変数を追加 letters.add(a); letters.add(b); letters.add(c);

自分で試してみる»


add()メソッド

letters.add("d"); letters.add("e");

自分で試してみる»

同一の要素を追加すると、最初の要素のみが保存されます。

letters.add("a"); letters.add("b"); letters.add("c"); letters.add("c"); letters.add("c"); letters.add("c"); letters.add("c"); letters.add("c");

自分で試してみる»



forEach() メソッド

forEach()メソッドは、各Set要素に対して関数を呼び出します。

// Setを作成 const letters = new Set(["a","b","c"]); // List内の全ての要素に対して処理を行う let text = ""; letters.forEach (function(value) {   text += value; })

自分で試してみる»


values()メソッド

values()メソッドは、Set内のすべての値を含むIteratorオブジェクトを返します。

letters.values()   // Returns [object Set Iterator]

自分で試してみる»

これで、Iterator オブジェクトを使用して要素にアクセスできます。

// Iteratorを作成 const myIterator = letters.values(); // 全ての値をListにする let text = ""; for (const entry of myIterator) {   text += entry; }

自分で試してみる»


keys()メソッド

Setにはキーがありません。
keys()values()と同じものを返します。
これにより、セットはマップと互換性があります。


letters.keys()   // Returns [object Set Iterator]

自分で試してみる»


entry()メソッド

Setにはキーがありません。
entries()は、[key,value]ペアの代わりに[value,value]ペアを返します。
これにより、SetsとMapsは互換性を持つようになります。


// Iteratorを作成 const myIterator = letters.entries(); // 全ての値をListにする let text = ""; for (const entry of myIterator) {   text += entry; }

自分で試してみる»


Setはオブジェクト

Setの場合、typeofオブジェクトを返します。

typeof letters;      // Returns object

自分で試してみる»

Setの場合、instanceof Settrue を返します:

letters instanceof Set;  // Returns true

自分で試してみる»



プログラミング学習を加速させる

プログラミングをプロの講師に教えてもらいませんか。

テックアイエスのプログラミングスクールは初心者も大歓迎です。年齢制限もありません。転職・副業に強く、挫折させない手厚いサポートで稼ぐ力を身につけましょう!

スクールの詳細