Find vs FindIndex em JavaScript

🚀 Find vs FindIndex em JavaScript: quando usar cada um?

No ecossistema do JavaScript, métodos de arrays são essenciais para escrever códigos mais limpos e eficientes.

Entre eles, .find() e .findIndex() se destacam por resolverem problemas semelhantes, mas com retornos diferentes.

🔍 O que é o .find()?

O método .find() percorre o array e retorna o primeiro elemento que satisfaz uma condição (callback).

Caso não encontre, retorna undefined.

const nums = [10, 20, 30];
const result = nums.find(n => n > 15);

// 20

Ideal quando você precisa do valor em si.

📍 O que é o .findIndex()?

Já o .findIndex() retorna o índice do primeiro elemento que atende à condição.

Se não encontrar, retorna -1.

const nums = [10, 20, 30];
const index = nums.findIndex(n => n > 15);

// 1

Perfeito quando você precisa da posição no array.

⚖️ Semelhanças entre eles

  • ✅ ambos recebem uma função de teste (callback)
  • ✅ percorrem o array até encontrar o primeiro match
  • ✅ param a execução assim que encontram o resultado
  • ✅ são métodos iterativos modernos (ES6+)

⚔️ Principais diferenças

  • 🔸 .find() retorna o elemento
  • 🔸 .findIndex() retorna o índice
  • 🔸 .find() retorna undefined se não encontrar
  • 🔸 .findIndex() retorna -1 se não encontrar

💡 Quando usar cada um?

  • ✔ use .find() quando precisa manipular diretamente o objeto ou valor encontrado
  • ✔ use .findIndex() quando precisa atualizar, remover ou acessar via índice

🧠 Resumo prático

Se você quer o conteúdo, use .find().

Se você quer a posição, use .findIndex().

Dominar essa diferença evita loops desnecessários e deixa seu código muito mais expressivo.

Voltar para Postagens JavaScript Ver no LinkedIn