Programming Self-Study Notebook

勉強したことを忘れないように! 思い出せるように!!

JavaScriptで配列から重複する要素を取り除く

f:id:overworker:20200406080809j:plain:h250

方法1:filterメソッドとindexOfメソッドを利用する

const list = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun', 'Sun', 'Sun'];
const day = list.filter((x,i,self) =>{
  return self.indexOf(x) === i;
})
console.log(day);               // ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]
  • Array.prototype.indexOf()
    • indexOf() メソッドは引数に与えられた内容と同じ内容を持つ配列要素の内、最初のものの添字を返します。存在しない場合は -1 を返します。

方法2:スプレッド構文とSetオブジェクトを利用する

const list = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun', 'Sun', 'Sun'];
const day = [...(new Set(list))];
console.log(day);               // ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]
  • Setオブジェクトは重複しない値の集合を管理するためのオブジェクト。

その他の記事について

overworker.hatenablog.jp