filter
_.filter(predicate, collection)
# Ⓢ [Ⓣ][1] Ⓝ
Iterates over elements of collection, returning an array of all elements
predicate returns truthy for. The predicate is invoked with three
arguments: (value, index|key, collection).
Note: Unlike _.remove, this method returns a new array.
Since
0.1.0
Arguments
predicate(Function): The function invoked per iteration.collection(Array|Object): The collection to iterate over.
Returns
(Array): Returns the new filtered array.
Example
var users = [
{ 'user': 'barney', 'age': 36, 'active': true },
{ 'user': 'fred', 'age': 40, 'active': false }
];
_.filter(function(o) { return !o.active; }, users);
// => objects for ['fred']
// The `_.matches` iteratee shorthand.
_.filter({ 'age': 36, 'active': true }, users);
// => objects for ['barney']
// The `_.matchesProperty` iteratee shorthand.
_.filter(['active', false], users);
// => objects for ['fred']
// The `_.property` iteratee shorthand.
_.filter('active', users);
// => objects for ['barney']
// Combining several predicates using `_.overEvery` or `_.overSome`.
_.filter(_.overSome([{ 'age': 36 }, ['age', 40]]), users);
// => objects for ['fred', 'barney']