Método findIndex() da matriz JavaScript

Resumo : neste tutorial, você aprenderá como usar o método Array findIndex() para encontrar o primeiro elemento que satisfaça um determinado teste.

Introdução ao método JavaScript Array findIndex()

ES6 adicionou um novo método chamado findIndex()ao Array.prototype, que permite encontrar o primeiro elemento em um array que satisfaça uma função de teste fornecida.

O findIndex()método retorna o índice do elemento que satisfaz uma função de teste ou -1 se nenhum elemento passou no teste.

O seguinte ilustra a sintaxe do findIndex()método:

findIndex(testFn(element[, index[, array]])[, thisArg])Linguagem de código:  CSS  ( css )

O findIndex()leva dois argumentos:

1)testFn

A testFné uma função a ser executada em cada elemento do array até que a função retorne true, indicando que o elemento foi encontrado.

O testFnleva três argumentos:

  • elementé o elemento atual na matriz.
  • indexé o índice do elemento atual que está sendo processado.
  • arrayé o array que the findIndex()foi chamado.

2)thisArg

O thisArgé um objeto opcional a ser usado thisao executar o callback. Se você omitir o thisArgargumento, a findIndex()função usará undefined.

O findIndex()executa testFnem cada elemento da matriz até encontrar aquele em que testFnretorna um valor verdadeiro, que é um valor que força a true.

Depois de findIndex()encontrar tal elemento, ele retorna imediatamente o índice do elemento.

Exemplos de array JavaScript findIndex()

Vejamos alguns exemplos de uso do findIndex()método JavaScript Array.

1) Usando o método Array findIndex() com um exemplo de array simples

O exemplo a seguir retorna o índice da primeira ocorrência do número 7 na ranksmatriz:

let ranks = [1, 5, 7, 8, 10, 7];
let index = ranks.findIndex(rank => rank === 7);
console.log(index);Linguagem de código:  JavaScript  ( javascript )

Saída:

2    

2) Usando o método Array findIndex() com uma condição mais complexa

Este exemplo usa o findIndex()método para obter o índice da primeira ocorrência do número 7 após o índice 2 na ranksmatriz:

let ranks = [1, 5, 7, 8, 10, 7];

let index = ranks.findIndex(
    (rank, index) => rank === 7 && index > 2
);

console.log(index);Linguagem de código:  JavaScript  ( javascript )

Saída:

5

3) Usando o método Array findIndex() com um array de objetos

O exemplo a seguir usa o findIndex()método Array para encontrar o índice do primeiro produto cujo preço é maior que 1000:

const products = [
  { name: 'Phone', price: 999 },
  { name: 'Computer', price: 1999 },
  { name: 'Tablet', price: 995 },
];

const index = products.findIndex(product => product.price > 1000);

console.log(index); // 1Linguagem de código:  JavaScript  ( javascript )

Resumo

  • Use o método JavaScript Array findIndex()para encontrar o primeiro elemento que satisfaça um determinado teste.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *