JavaScript Array filter() Method

Last Updated : 1 Jun, 2026

The filter() method creates a new array by selecting elements that meet a specific condition. It does not modify the original array and ignores empty elements.

  • filter() returns a new array with elements that pass the given test.
  • The condition is checked using a callback function like canVote().
  • Only elements for which canVote() returns true are included in the new array.
JavaScript
function canVote(age) {
    return age >= 18;
}

let filtered = [24, 33, 16, 40].filter(canVote);
console.log(filtered);

Syntax

array.filter(callback(element, index, arr), thisValue)

Parameters: This method accepts five parameters as mentioned above and described below: 

ParameterDescription
callbackThe function is to be called for each element of the array.
elementThe value of the element currently being processed.
index(Optional) The index of the current element in the array, starting from 0.
arr(Optional) The complete array on which filter() is called.
thisValue(Optional) The context to be passed as this to be used while executing the callback function. If not provided, undefined is used as the default context.

Return value: It returns an array of elements that pass the test and an empty array if no elements pass the test. 

Example 1: Creating a new array consisting of only those elements that satisfy the condition checked by isPositive() function.

JavaScript
function isPositive(value) {
    return value > 0;
}

let filtered = [112, 52, 0, -1, 944].filter(isPositive);
console.log(filtered);

Example 2: Creating a new array consisting of only those elements that satisfy the condition checked by isEven() function. 

JavaScript
function isEven(value) {
    return value % 2 === 0;
}

let filtered = [11, 98, 31, 23, 944].filter(isEven);
console.log(filtered);
Comment
Morty Proxy This is a proxified and sanitized view of the page, visit original site.