Como encontrar o índice de objeto em JavaScript Array

Como encontrar o índice de objeto em JavaScript Array
Às vezes, ao trabalhar com objetos contendo matrizes, você precisará conhecer o índice de um objeto. Você pode empregar diferentes métodos JavaScript para identificar objetos exclusivos de suas propriedades e depois acessar seus índices. Este guia fornecerá uma explicação extensa e abrangente de como diferentes métodos podem ser usados ​​para atingir esse objetivo.

Encontre o índice do objeto com o MAP e o Método Indexof ()

O método do mapa é usado para aplicar uma função em cada item da matriz, transformá -lo e depois devolvê -lo dentro de uma matriz. Podemos usar este método para obter propriedades específicas de objetos que podemos usar para identificar objetos. Quando identificamos o objeto que queremos conhecer o índice de que podemos chamar o método indexOf ():

Let Funcionários = [FirstName: "John", LastName: "Doe", Idade: 38, primeiro nome: "John", SounName: "Smith", idade: 45];
Deixe Ind = funcionários.mapa (item => item.idade).indexOf (45);
console.log (ind);

No código acima, primeiro definimos uma matriz que contém dois objetos. Os objetos contêm dados de diferentes funcionários. Em seguida, usamos a função do mapa para apenas obter os idades dos funcionários em uma matriz separada. Por fim, usamos o método indexOf () para obter o índice do objeto cuja propriedade etária tem 45 anos e a imprimimos no console. Poderíamos ter usado a função do mapa para obter o valor de qualquer propriedade e obter o índice do objeto com base nessa propriedade.

O JavaScript ES6 introduziu um novo método chamado findIndex (). Este método é muito mais elegante, mas infelizmente não funciona em navegadores antigos.

Encontre o índice do objeto com o método findIndex ()

O método findIndex () leva uma função contendo um teste como argumento e o aplica a cada elemento da matriz sem fazer alterações na matriz original. Em seguida, ele retorna a posição do elemento da matriz ou -1 se nenhum elemento passar no teste. Com o uso do método findIndex (), não precisamos da função map ():

Let Funcionários = [FirstName: "John", LastName: "Doe", Idade: 38, primeiro nome: "John", SounName: "Smith", idade: 45];
Deixe Ind = funcionários.FindIndex (Item => Return Item.idade == 45);
console.log (ind);

O método findIndex () também pode tomar o índice do elemento atual e a matriz do elemento atual como argumentos opcionais.

Usamos funções de seta nos dois exemplos acima para tornar o código mais legível, mas a sintaxe da função padrão também pode ser usada como argumento para essas funções:

Let Funcionários = [FirstName: "John", LastName: "Doe", Idade: 38, primeiro nome: "John", SounName: "Smith", idade: 45];
Deixe Ind = funcionários.FindIndex (function (item) retorna item.idade == 45);
console.log (ind);

Conclusão

Este tutorial abrangente fornece dois métodos diferentes para encontrar os índices de objetos em JavaScript com base nos valores de suas propriedades. O método findIndex () aplica a função condicional a cada elemento da própria matriz e depois retorna o índice do elemento que passa a condição. Mas quando estamos usando o método indexOf (), também precisamos usar o método map () para obter os valores da propriedade.