#はじめに
プログラミング歴3ヶ月の素人が書いています。(間違っていたらご指摘ください)
- JavaScriptのSetオブジェクトについて
上記についてまとめます。
#今回の目的
重複する値を含む配列を、重複のない配列に変換します。
その際に、Setオブジェクトを活用します。
#Setオブジェクトについて
Setオブジェクトは、重複のないコレクションです。
const set1 = new Set([1, 2, 3, 4, 5]);
上記のようにnew Set()
して作成します。
Setの中身は一意であることが保証されています。
#重複を含む配列からSetオブジェクトを作成する
const numbers = [2,3,4,4,2,3,3,4,4,5,5,6,6,7,5,32,3,4,5]
const setNums = new Set(numbers)
//{2, 3, 4, 5, 6, 7, 32} <= Setオブジェクト
重複を含む配列からSetオブジェクトを作成しました。
重複していた値がなくなっています。
#Setオブジェクトを配列に戻す
const uniqueNums = Array.from(setNums)
// [2, 3, 4, 5, 6, 7, 32]
Array.from()
を利用することで、重複のないSetオブジェクトから配列を改めて作成できました。
#まとめ
配列をSetオブジェクト化することで、まるで重複を取り除くような処理が可能です。
配列にまた戻して利用することもできます。