記事の内容
filter
filterメソッドは、Arrayオブジェクト内の要素が条件を満たした要素のみで新たな配列を作ります。
記法
新しい配列 = 配列.filter ( function ( value, index, array) {
return 処理;
}, this);
value : 配列の値が1つずつ渡される
index : 配列のキーが1つずつ渡される
array : 配列が渡される
this : コールバック関数内のthisの参照オブジェクト
例
let ary = [1, 2, 3, 4, 5];
// 偶数のみ取得
const result = ary.filter(function(value) {
return value % 2 === 0;
});
console.log("result : " + result);
出力結果
result : 2,4
アロー関数
記法
新しい配列 = 配列.filter ( ( value, index, array ) => 処理 )
例
let ary = [1, 2, 3, 4, 5];
const result = ary.filter((value) => value % 2 === 0);
console.log("result : " + result);
出力結果
result : 2,4
コールバック関数
記法
コールバック関数
新しい配列 = 配列.filter( callbackFn )
例
let ary = [1, 2, 3, 4, 5];
// コールバック関数
function callbackFn(value){
return value % 2 === 0;
}
const result = ary.filter(callbackFn);
console.log("result : " + result);
出力結果
result : 2,4
コールバック関数(thisあり)
記法
コールバック関数
新しい配列 = 配列.filter( callbackFn, this )
例
let ary = [1, 2, 3, 4, 5];
// コールバック関数
function callbackFn(value){
return value % this === 0;
}
const result = ary.filter(callbackFn, 2);
console.log("result : " + result);
出力結果
result : 2,4