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)