English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
findIndex()Die Methode gibt den Index des ersten Elements im Array zurück, das den angegebenen Testfunction erfüllt.
findIndex()Die Methode ruft die Funktion für jedes Element im Array einmal auf:
Wenn ein Element im Array den Testbedingungen entspricht und true zurückgibt, gibt findIndex() die Indexposition des Elements zurück, und die folgenden Werte werden nicht mehr von der Ausführungsfunction aufgerufen
Wird kein Element gefunden, das den Bedingungen entspricht, wird -1
Beachten Sie: Die Methode findIndex() ändert das ursprüngliche Array nicht.
Beachten Sie: findIndex() führt die Funktion nicht aus, wenn das Array leer ist.
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) { return element >= 18; }Testen Sie heraus‹/›
Siehe auchfind()Methode, die den Wert des gefundenen Elements im Array zurückgibt, anstatt seinen Index
Die Zahlen in der Tabelle specify die erste Browserversion, die die Methode findIndex() vollständig unterstützt:
Methode | |||||
findIndex() | 45 | 25 | 32 | 8 | 12 |
Parameter | Beschreibung |
---|---|
callback | Funktion, die für jedes Element im Array ausgeführt wird Funktion参数:
|
thisArg | Optional. Der Wert, der an die Funktion übergeben wird, wird normalerweise der "this"-Wert Wenn dieser Parameter leer ist, wird "undefined" an den "this"-Wert weitergegeben |
Rückgabewert: | Wenn das Element den Test besteht, dann ist es im Array}Index; andernfalls-1 |
---|---|
JavaScript-Version: | ECMAScript 6 |
Der folgende Beispiel gibt die Indizes der Elemente im Array zurück, die Primzahlen sind; wenn es keine Primzahlen gibt, wird-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); }Testen Sie heraus‹/›