Introducción
En este laboratorio, exploraremos el concepto de encontrar el último índice de coincidencia de un elemento en una matriz utilizando JavaScript. Aprenderemos a utilizar los métodos Array.prototype.map() y Array.prototype.filter() para filtrar los elementos para los cuales la función proporcionada devuelve valores falsy, y Array.prototype.pop() para obtener el último elemento de la matriz filtrada. Al final de este laboratorio, serás capaz de encontrar eficientemente el último índice de coincidencia de un elemento en una matriz utilizando JavaScript.
Cómo encontrar el índice del último elemento que coincide en una matriz utilizando JavaScript
Para encontrar el índice del último elemento que coincide con una cierta condición en una matriz de JavaScript, utiliza la función findLastIndex. Aquí está cómo se utiliza:
const findLastIndex = (arr, fn) =>
(arr
.map((val, i) => [i, val])
.filter(([i, val]) => fn(val, i, arr))
.pop() || [-1])[0];
La función findLastIndex toma dos argumentos: la matriz en la que buscar y una función para probar cada elemento. Aquí está cómo funciona:
- Utiliza
Array.prototype.map()para crear una nueva matriz de pares[índice, valor]. - Utiliza
Array.prototype.filter()para eliminar los elementos de la matriz que no coinciden con la condición proporcionada por la funciónfn. - Utiliza
Array.prototype.pop()para obtener el último elemento de la matriz filtrada. - Si la matriz filtrada está vacía, devuelve
-1.
Aquí hay un ejemplo de cómo utilizar findLastIndex:
findLastIndex([1, 2, 3, 4], (n) => n % 2 === 1); // 2 (índice del valor 3)
findLastIndex([1, 2, 3, 4], (n) => n === 5); // -1 (valor predeterminado cuando no se encuentra)
Para comenzar a practicar la codificación, abre la Terminal/SSH y escribe node.
Resumen
¡Felicitaciones! Has completado el laboratorio de Encontrar el Último Índice de Coincidencia. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.