Menu
Coddy logo textTech

Os Métodos Find & FindIndex

Parte da seção Lógica & Fluxo do Journey de JavaScript da Coddy — lição 58 de 65.

O método find() retorna o primeiro elemento em um array que satisfaz uma função de teste fornecida. Se nenhum elemento for encontrado, ele retorna undefined.

O método findIndex() é semelhante, mas retorna o índice do primeiro elemento correspondente em vez do próprio elemento. Se nenhum elemento for encontrado, ele retorna -1.

Sintaxe básica:

array.find(callback(element[, index[, array]]))
array.findIndex(callback(element[, index[, array]]))

Exemplo simples com find():

const numbers = [5, 12, 8, 130, 44];
const found = numbers.find(num => num > 10);
console.log(found);
// 12 (primeiro número maior que 10)

Mesmo exemplo com findIndex():

const numbers = [5, 12, 8, 130, 44];
const foundIndex = numbers.findIndex(num => num > 10);
console.log(foundIndex);
// 1 (índice do primeiro número maior que 10)

Encontrando objetos em um array:

const inventory = [
	{name: 'apples', quantity: 2},
	{name: 'bananas', quantity: 0},
	{name: 'oranges', quantity: 5}
];

// Usando find
const result = inventory.find(item => item.name === 'bananas');
console.log(result); // {name: 'bananas', quantity: 0}

// Usando findIndex
const index = inventory.findIndex(item => item.name === 'bananas');
console.log(index); // 1
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Folha de consulta

O método find() retorna o primeiro elemento que satisfaz uma função de teste, ou undefined se nenhum for encontrado:

const numbers = [5, 12, 8, 130, 44];
const found = numbers.find(num => num > 10);
console.log(found); // 12

O método findIndex() retorna o índice do primeiro elemento correspondente, ou -1 se nenhum for encontrado:

const numbers = [5, 12, 8, 130, 44];
const foundIndex = numbers.findIndex(num => num > 10);
console.log(foundIndex); // 1

Encontrando objetos em arrays:

const inventory = [
	{name: 'apples', quantity: 2},
	{name: 'bananas', quantity: 0},
	{name: 'oranges', quantity: 5}
];

const result = inventory.find(item => item.name === 'bananas');
// {name: 'bananas', quantity: 0}

const index = inventory.findIndex(item => item.name === 'bananas');
// 1

Experimente você mesmo

Esta lição não inclui um desafio de código.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Lógica & Fluxo