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

Manuale di riferimento JS DOM

 Oggetto array di JavaScript

MetodoMetodo JavaScript array findIndex()

MetodoIl metodo restituisce l'indice del primo elemento dell'array che soddisfa il test fornito.

  • Il metodo esegue una volta la funzione per ogni elemento dell'array:

  • Quando un elemento dell'array restituisce true al test condizionale, findIndex() restituisce la posizione dell'indice dell'elemento che soddisfa i criteri e non chiama più la funzione esecutiva

Se non ci sono elementi che corrispondono ai criteri, viene restituito -1 Attenzione:

Il metodo findIndex() non modifica l'array originale. Attenzione:

La funzione non viene eseguita per un array vuoto.

Sintassi:
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) {
}
Prova a vedere‹/›

return element >= 18;Vedi anchefind()

Metodo che restituisce il valore dell'elemento trovato nell'array invece dell'indice.

Compatibilità del browser

I numeri nella tabella specificano la prima versione del browser che supporta completamente il metodo findIndex():
MetodofindIndex()4525328

12

Valore del parametroParametro
Descrizione
callback
La funzione eseguita per ogni elemento dell'array.
  • Parametri della funzione:element

  • (Obbligatorio) - L'elemento corrente che si sta elaborando nell'arrayindex

  • (Opzionale) - L'indice dell'elemento corrente nell'arrayarr

(Opzionale) - Opzionale. L'oggetto array di appartenenza dell'elemento correntethisArg
Opzionale. Il valore passato alla funzione di solito è il valore di 'this'.

Dettagli tecnici

Valore di ritorno:se l'elemento passa il test, allora èindice; altrimenti è-1
Versione di JavaScript:ECMAScript 6

Più esempi

Esempio seguente restituisce l'indice dell'elemento dell'array che è un numero primo; se non ci sono numeri primi, restituisce -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);
}
Prova a vedere‹/›

 Oggetto array di JavaScript