[JavaScript] 配列から特定の要素だけを取り出す - filter()

filter()は配列の要素を順番にテストしていきtrueが返された要素だけの新しい配列を返却します。

/**
 * 配列から偶数だけを取り出す
 */
const list = [1, 2, 3, 4, 5]
const newlist = list.filter( value => ((value % 2) === 0) )

// [2, 4]
console.log(newlist)
  • 元になった配列(list)は変更されません。
  • すべてfalseになった場合は空の配列が返ります。 [:contents]

利用例

閾値以上の値を取り出す

3以上の値だけを取り出します。

const list = [1, 2, 3, 4, 5]
const newlist = list.filter( value => (value >= 3) )

// [3,4,5]
console.log(newlist)

指定の文字が含まれていたらスキップする

apple」が含まれている場合はスキップします。

const list = ['apple', 'banana', 'pineapple', 'orange']
const newlist = list.filter( value => ! (value.match(/apple/)) )

// ['banana','orange']
console.log(newlist)

参考ページ