filterを利用した配列のデータにフィルタをかける
配列の各要素になんらかの条件をつけてフィルターをかけたい時があるかと思いますが、そのような時にはfilterが役立ちます。
以下の例では2の倍数の数字の場合はtrueを返し、trueの場合はevenNumbersに配列の形で代入し直しています。
index.js
const numbers = [1, 50, 40, 90];
const evenNumbers = numbers.filter(function(number){
if (number % 2 === 0) {
return true;
} else {
return false;
}
});
console.log(evenNumbers);
//=> [50, 40, 90]
filterもアロー関数を利用することで大幅に短縮して記述することができます。
if文の部分もざくっと短縮して書くことができます。
index.js
const numbers = [1, 50, 40, 90];
const evenNumbers = numbers.filter(number => number % 2 === 0);
console.log(evenNumbers);
//=> [50, 40, 90]