Функция фильтра в Javascript позволяет перебирать массив и создавать новый массив со значениями, которые соответствуют условию.

Числа

Этот фрагмент берет массив целых чисел и создает новый массив, содержащий только значения меньше 4.

let array = [1, 2, 3, 4, 5, 6]
let newArray = array.filter((val) => {
  return val < 4
})
console.log(newArray)
// [1, 2, 3]

Прелесть фильтра с ES6 в том, что вы можете создать однострочную функцию, которая делает то же самое, что и выше!

let array = [1, 2, 3, 4, 5, 6]
let newArray = array.filter((val) => val < 4)

Объекты

Это берет массив объектов и создает новый массив, содержащий только объекты с тегом «статья».

let array = [
  {
    tag: 'article',
    name: 'a great new article!'
  },
  {
    tag: 'article',
    name: 'another article'
  },
  {
    tag: 'note',
    name: 'remember to do the shopping'
  },
  {
    tag: 'note',
    name: 'buy mario kart'
  },
  {
    tag: 'article',
    name: 'how to write a fake article name'
  }
]
let newArray = array.filter((val) => {
  if(val.tag === 'article') {
    return val
  }
})
console.log(newArray)
// [ { tag: 'article', name: 'a great new article!' },
//   { tag: 'article', name: 'another article' },
//   { tag: 'article', name: 'how to write a fake article name' }