本記事では、JavaScriptのSetオブジェクトの値を全て取得する方法について解説しています。
JavaScriptの学習におすすめ参考書
改訂3版JavaScript本格入門 ~モダンスタイルによる基礎から現場での応用まで
先輩くん
10万部突破したJavaScriptの本が大幅増補改訂し7年ぶりに発売されたよ!
後輩ちゃん
最新の基本文法から、開発に欠かせない応用トピックまで学ぶことが出来るよ!
綺麗なコードが書けるようになる!
リーダブルコード-より良いコードを書くためのシンプルで実践的なテクニック
先輩くん
より良いコードを書きたい人におすすめの本だよ!
後輩ちゃん
10以上前の書籍ですが、内容は今でも役に立つものばかりです!
for…of文で取得する方法
Setオブジェクトの値を全て取得する1つ目の方法は、for…of文を使用します。
let setObj = new Set(["スイカ", "イチゴ", "メロン"]);
for (let fruits of setObj) {
console.log(fruits); // => スイカ イチゴ メロン
}
使い方は配列と全く同じで、「仮引数 of Setオブジェクト」の形式で記述します。仮引数に一つずつSetオブジェクトの値が渡されます。
forEachメソッドで取得する方法
Setオブジェクトの値を全て取得する2つ目の方法は、forEachメソッドを使用します。
let setObj = new Set(["スイカ", "イチゴ", "メロン"]);
setObj.forEach((value, index) => {
console.log(value); // => スイカ イチゴ メロン
console.log(index); // => スイカ イチゴ メロン
});
Setオブジェクトに対してforEachメソッドを使用する上での注意すべき点は、第二引数にも値が渡されることです。
配列に対してforEachメソッドを使用した場合は、第二引数にはインデックス番号(添え字)が渡されますが、Setオブジェクトは配列のようにインデックス番号を持たないため、第二引数にも値が渡されます。