English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
findIndex()O método retorna o índice do primeiro elemento que atende ao teste fornecido
findIndex()O método chama a função uma vez para cada elemento do array:
Quando os elementos do array retornam true ao testar a condição, findIndex() retorna a posição do índice do elemento que atende aos critérios, e os valores posteriores não serão executados
Se não houver elementos que atendam aos critérios, retorna -1
Atenção: O método findIndex() não altera o array original.
Atenção: A função não será executada para arrays vazios.
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) { retorna element >= 18; }Teste e Veja‹/›
Veja tambémfind()Método que retorna o valor do elemento encontrado no array em vez do índice
Os números na tabela especificam a primeira versão do navegador que suporta completamente o método findIndex():
Método | |||||
findIndex() | 45 | 25 | 32 | 8 | 12 |
Parâmetro | Descrição |
---|---|
callback | Função executada para cada elemento do array Parâmetros da função:
|
thisArg | Opcional. O valor passado para a função geralmente é o valor de "this" Se este parâmetro estiver vazio, "undefined" será passado para o valor de "this" |
Retorno: | Se o elemento passar no teste, é o índice no arrayÍndice; caso contrário, é-1 |
---|---|
Versão do JavaScript: | ECMAScript 6 |
O seguinte exemplo retorna o índice do elemento no array que é um número primo; se não houver números primos, retorna-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); }Teste e Veja‹/›