Back to Home
Arrays

How to Filter Arrays

Use .filter() to create a new array with matching elements

Quick Answer (2024 ES6+ Way)

javascript
const numbers = [1, 2, 3, 4, 5, 6];
const evens = numbers.filter(n => n % 2 === 0);
console.log(evens); // [2, 4, 6]

Live Example

javascript
const users = [
  { name: 'Alice', age: 25, active: true },
  { name: 'Bob', age: 17, active: true },
  { name: 'Charlie', age: 30, active: false }
];

const activeAdults = users.filter(
  user => user.active && user.age >= 18
);

console.log(activeAdults.map(u => u.name));

Common Variations

Multiple Conditions
javascript
const filtered = items.filter(item => {
  return item.price > 100 && item.inStock === true;
});
Find First Match
javascript
const found = users.find(user => user.age > 25);
// Returns first matching element or undefined

❌ Don't Do This (Outdated Way)

Avoid manual loops for filtering

javascript
// DON'T DO THIS
var evens = [];
for (var i = 0; i < numbers.length; i++) {
  if (numbers[i] % 2 === 0) {
    evens.push(numbers[i]);
  }
}

Browser Support

Works in all modern browsers (ES5+)

#filter#array#conditional