English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
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.
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.
Los números en la tabla especifican la primera versión del navegador que admite completamente el método findIndex():
Método | |||||
findIndex() | 45 | 25 | 32 | 8 | 12 |
Parámetros | Descripción |
---|---|
callback | La función que se ejecuta para cada elemento del array Parámetros de la función:
|
thisArg | Opcional. 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" |
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 |
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í‹/›