Name
Array.filter() — return array elements that pass a predicate
Availability
ECMAScript 5
Synopsis
array
.
filter
(
predicate
)
array
.
filter
(
predicate
,
o
)
Arguments
predicate
The function to invoke to determine whether an element of
array
will be included in the returned array.o
An optional value on which
predicate
is invoked.
Returns
A new array containing only those elements of
array
for which
predicate
returned true
(or a truthy value).
Description
filter()
creates a new
array and then populates it with the elements of
array
for which the
predicate
function returns true
(or a truthy value). The filter()
method does not modify
array
itself (though the
predicate
function may do so).
filter()
loops through the
indexes of array
, in ascending order, and
invokes predicate
once for each element.
For an index i
,
predicate
is invoked with three
arguments,
predicate
(
array
[
i
],
i
,
array
)
If predicate
returns true
or a truthy value, then the element
at index i
of
array
is appended to the newly created
array. Once filter()
has tested
each element of array
it returns the new
array.
See Array.forEach() for further details.
Example
[
1
,
2
,
3
].
filter
(
function
(
x
)
{
return
x
>
1
;
});
// => [2,3]
Get JavaScript: The Definitive Guide, 6th Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.