English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Método findIndex() del array JavaScript

 Objeto de matriz de JavaScript

findIndex()El método devuelve el índice del primer elemento del array que cumple con la prueba proporcionada.

findIndex()El método llama a la función de ejecución una vez para cada elemento del array:

  • Cuando un elemento del array devuelve true en la prueba de condición, findIndex() devuelve la posición del índice del elemento que cumple con los requisitos y no se llama a la función de ejecución de valores posteriores

  • Si no hay elementos que cumplan con los requisitos, se devuelve -1

Nota: El método findIndex() no cambia el array original.

Nota: El método findIndex() no ejecuta la función para un array vacío.

Sintaxis:

array.findIndex(callback, thisArg)
array.findIndex(function(element, index, arr), thisArg)
var num = [1, 30, 39, 29, 10, 13];
var val = num.findIndex(myFunc);
function myFunc(element) {
devolver element >= 18;
}
Prueba aquí‹/›

Véase tambiénfind()Método que devuelve el valor del elemento encontrado en el array en lugar de su índice.

Compatibilidad del navegador

Los números en la tabla especifican la primera versión del navegador que admite completamente el método findIndex():

Método
findIndex()452532812

Valor del parámetro

ParámetrosDescripción
callback
La función que se ejecuta para cada elemento del array
Parámetros de la función:
  • element(Requerido)-El elemento actual que se está procesando en el array

  • index(Opcional)-El índice del elemento actual que se está procesando en el array

  • arr(Opcional)-Opcional. El objeto de array al que pertenece el elemento actual

thisArgOpcional. El valor pasado a la función generalmente se usa como valor de "this"
Si este parámetro está vacío, "undefined" se pasará al valor de "this"

Detalles técnicos

Valor de retorno:Si el elemento pasa la prueba, es el elemento en el array queíndice; de lo contrario es-1
Versión de JavaScript:ECMAScript 6

Más ejemplos

El siguiente ejemplo devuelve la posición del elemento en el array que es un número primo; si no hay números primos, devuelve-1:

var array1 =[1, 15, 17, 24, 29, 10, 13];
function isPrime(element) {
  var start = 2;
  while (start <= Math.sqrt(element)) {
     if (element % start < 1) {
         return false;
     } else {
         start++;
     }
  }
  return element > 1;
}
function myFunc1() {
   document.getElementById("result").innerHTML = array1.findIndex(isPrime);
}
Prueba aquí‹/›

 Objeto de matriz de JavaScript