配列の重複していないデータのみ抽出するサンプルです。
サンプルソース
例)配列「arr1」から重複していないデータのみ抽出した配列を取得する
1 2 3 4 5 6 7 8 9 10 11 |
//重複要素がある配列 var arr1 = ['aaa', 'bbb', 'aaa', 'bbb', 'ccc', 'aaa', 'ddd'] //重複していないデータのみ抽出 var arr2 = target.filter(function (val, idx, arr){ return arr.indexOf(val) === arr.lastIndexOf(val); }); console.log(arr1); console.log(arr2); |
- (結果)
- arr1 ⇒ ['aaa', 'bbb', 'aaa', 'bbb', 'ccc', 'aaa', 'ddd'] arr2 ⇒ ['ccc', 'ddd']
解説
- filterメソッドで重複要素を判定しています。
- filterメソッドに渡す関数の引数の意味は以下の通りです。
val:配列の要素
idx:配列の要素番号
arr:対象の配列