配列から条件に合致する値のみ取得するには、.filter()を使用します。
サンプルソース
例1)数値配列から値が5以上のもののみ取得する
1 2 3 4 5 6 7 8 |
//配列 var arr = [1, 3, 5, 7, 9]; //抽出 var arr2 = arr.filter(function(e){ return (e >= 5);}); //結果表示 console.log(arr2); |
- (結果)
- [5, 7, 9]
例2)オブジェクト配列からcodeが110以上のもののみ取得する
1 2 3 4 5 6 7 8 9 10 11 12 |
//オブジェクト配列 var arr = [ {code:100, name:"aaa"}, {code:110, name:"bbb"}, {code:120, name:"ccc"} ]; //抽出 var arr2 = arr.filter(function(e){ return (e.code >= 110);}); //結果表示 console.log(arr2); |
- (結果)
- [{code:110, name:"bbb"}, {code:120, name:"ccc"}]
解説
- filterメソッドを使うと、配列から簡単に条件に合致する値を抽出できます。
- 条件に合致した一番最初の値のみ取得したい場合は、.findをご使用ください。