O que é e como funciona o método find JavaScript?

Última atualização em Sábado 7º mai 2022

Find JavaScript

No ES5, para encontrar um elemento em uma array, você usa os métodos indexOf() ou lastIndexOf(). No entanto, esses métodos são bastante limitados porque retornam apenas o índice do primeiro elemento correspondente.

  • O ES6 introduziu um novo método chamado find() adicionado ao objeto Array.prototype.
  • O método find() retorna o primeiro elemento em uma array que satisfaz uma função fornecida.

Sintaxe

	find(callback(element[, index[, array]])[, thisArg])
	

Argumentos

O find() aceita dois argumentos: uma função de retorno de chamada e um valor opcional a ser usado para isso dentro da função de retorno de callback.

callback
O retorno de callback é uma função que é executada em cada elemento da matriz. São precisos três argumentos:

  • element é o elemento atual.
  • index o índice do elemento atual.
  • array a array que o find() foi callback.

JavaScript Find

thisArg

O thisArg é o objeto usado como este dentro do retorno de callback.

Return Value

O find() executa a função de retorno de callback para cada elemento na array até que o retorno de callback retorne um valor veracidade.

Array Find JavaScript

	const árvores = [
  "birch",
  "maple",
  "oak",
  "poplar"
];

const result = árvores.find(árvore => árvore.startsWith("m"));
console.log(result); // maple
	

non-ES6

	const result = árvores.find(function(árvore) {
  return árvore.startsWith("m");
});
	

Usando com objects

Podemos usar o find() para pesquisar facilmente matrizes de objetos.

JS Array Find

	const árvores = [
  { nome: "birch", contar: 4 },
  { nome: "maple", contar: 5 },
  { nome: "oak", contar: 2 }
];

const result = árvores.find(árvore => árvore.nome === "oak");

console.log(result); // { nome: 'oak', contar: 2 }
	

Array.find é um método simples, mas incrivelmente útil para pesquisar arrays JavaScript. É um dos vários métodos úteis disponíveis em Arrays.

Referências

Array find()