Cómo encontrar el índice de objetos en la matriz de JavaScript

Cómo encontrar el índice de objetos en la matriz de JavaScript
A veces, al trabajar con objetos que contienen matrices, deberá conocer el índice de un objeto. Puede emplear diferentes métodos de JavaScript para identificar de manera única los objetos de sus propiedades y luego acceder a sus índices. Esta guía dará una explicación extensa e completa de cómo se pueden utilizar diferentes métodos para lograr este objetivo.

Encuentre el índice de objeto con el método MAP y indexOf ()

El método del mapa se utiliza para aplicar una función en cada elemento de la matriz, transformarlo y luego devolverlo dentro de una matriz. Podemos usar este método para obtener propiedades específicas de objetos que luego podemos usar para identificar objetos. Cuando identificamos el objeto que queremos saber el índice de que podemos llamar al método indexOf ():

Let Employee = [FirstName: "John", LastName: "Doe", Age: 38, FirstName: "John", LastName: "Smith", Age: 45];
Deja que Ind = empleados.mapa (elemento => elemento.edad).índice de (45);
consola.log (ind);

En el código anterior, primero definimos una matriz que contiene dos objetos. Los objetos contienen datos de diferentes empleados. Luego utilizamos la función de mapa para obtener las edades de los empleados en una matriz separada. Por último, utilizamos el método indexOf () para obtener el índice del objeto cuya propiedad de edad es 45 y lo imprimimos a la consola. Podríamos haber usado la función de mapa para obtener el valor de cualquier propiedad y obtener el índice del objeto basado en esa propiedad.

JavaScript ES6 introdujo un nuevo método llamado findindex (). Este método es mucho más elegante, pero lamentablemente no funciona en los viejos navegadores.

Buscar el índice de objeto con el método findIndex ()

El método findindex () toma una función que contiene una prueba como argumento y la aplica a cada elemento de la matriz sin hacer ningún cambio en la matriz original. Luego devuelve la posición del elemento de matriz o -1 si ningún elemento pasa la prueba. Con el uso del método FindIndex () no tenemos ninguna necesidad de la función MAP ():

Let Employee = [FirstName: "John", LastName: "Doe", Age: 38, FirstName: "John", LastName: "Smith", Age: 45];
Deja que Ind = empleados.findIndex (item => return item.edad == 45);
consola.log (ind);

El método findindex () también puede tomar el índice del elemento actual y la matriz del elemento actual como argumentos opcionales.

Hemos utilizado las funciones de flecha en los dos ejemplos anteriores para que el código sea más legible, pero la sintaxis de la función predeterminada también se puede usar como argumento para estas funciones:

Let Employee = [FirstName: "John", LastName: "Doe", Age: 38, FirstName: "John", LastName: "Smith", Age: 45];
Deja que Ind = empleados.findindex (function (elemento) elemento return.edad == 45);
consola.log (ind);

Conclusión

Este tutorial completo ofrece dos métodos diferentes para encontrar los índices de objetos en JavaScript basados ​​en los valores de sus propiedades. El método findindex () aplica la función condicional a cada elemento de la matriz misma y luego devuelve el índice del elemento que pasa la condición. Pero cuando estamos utilizando el método indexOf (), también tenemos que usar el método map () para obtener los valores de las propiedades.