第1引数「配列(Object)」の値の中で第2引数の関数の条件を満たしている値のみの配列を返す。
■使用例
var arr = [1, 2, 3, 4, 5, 6];
var func = function( num ){
return num % 2 == 0;
}
// [ 2, 4, 6 ]
var re = _.filter( arr, func );
■内部構造
_.filter = _.select = function(obj, predicate, context) {
var results = [ ];
// 第3引数が入力されていない、第2引数が関数ならそのまま。
predicate = cb(predicate, context);
// objのそれぞれの値を関数で処理。条件を満たしている値のみ results に push される。
_.each(obj, function(value, index, list) {
if (predicate(value, index, list)) results.push(value);
});
// 条件を満たしている値のみの配列が返される。
return results;
};