O que o filter() faz?

O array é percorrido da esquerda para direita invocando, a cada iteração, uma função de retorno.

O valor retornado é um booleano indicando se o elemento deve ser mantido (true) ou descartado (false). O array retornado contém apenas os elementos que retornaram verdadeiro.

<aside> 💡 Usamos filter() quando precisamos remover alguns itens do array com base em algum critério

</aside>

Exemplo

Remover itens duplicados de um array

let uniqueArray = array.filter( 
	function( elem, index, array ) {
    return array.indexOf( elem ) === index;
	} 
);

// [1, 4, 7, 2, 1, 3, 7]
// [1, 4, 7, 2, 3]

Parâmetros

array.filter( function( elem, index, array ) {
    ...
}, thisArg );

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/0ba465f9-eed2-45e1-9792-04811065ec69/1.png