【js(配列操作)】filter()
filter()とは
ループ処理
配列限定
条件でソートできる
書き方
map()と同じ。
数値の配列がある、7以下の数値で新たに配列を作る
let numbers = [1,2,3,4,5,6,7,8,9]; //7以下を取得して新しい配列にする let result = numbers.filter(function(number){ return number <= 7; }); console.log(result);
【結果】
[1, 2, 3, 4, 5, 6, 7]
文字の配列がある、特定の文字だけ取得する
let users = ['userID_1234', 'userID_4567', 'userID_8755', 'userID_6876']; //文字の配列がある、特定の文字だけ取得する let result = users.filter(function(user){ return user === 'userID_8755'; }); console.log(result);
【結果】
["userID_8755"]
外部のオブジェクトと情報を比較して特定の取得する
const MENUS = { 'グリル' : 750, 'ポークプレート' : 800, 'タコライス' : 650, 'カレー' : 500, 'カルボナーラ' : 1200, 'ピザ' : 2400, 'ビール' : 750, 'コーラ' : 500, }; let orders = ['ピザ','コーラ','カレー','ポークプレート']; //外部のオブジェクトと情報を比較して特定の取得する let result = orders.filter(function(order){ for(let menu in this){ if(menu === order){ return order; } } },MENUS); console.log(result);
【結果】
["ピザ", "コーラ", "カレー", "ポークプレート"]