JavaScript findIndex()
Пример
Получите индекс первого элемента в массиве, который имеет значение 18 или более:
var ages = [3, 10, 18, 20];
function checkAdult(age) {
return age >= 18;
}
function myFunction() {
document.getElementById("demo").innerHTML = ages.findIndex(checkAdult);
}
Попробуйте сами »
Больше примеров "Попробуйте сами" ниже.
Определение и использование
Метод findIndex()
возвращает индекс первого элемента массива, прошедшего тест (предоставляется в виде функции).
Метод findIndex() выполняет функцию один раз для каждого элемента, присутствующего в массиве:
- Если он находит элемент массива, где функция возвращает значение true, findIndex() возвращает индекс этого элемента массива (и не проверяет остальные значения)
- Otherwise it returns -1
Примечание: findIndex() не выполняет функцию для элементов массива без значений.
Примечание: findIndex() не изменяет исходный массив.
Поддержка браузера
Цифры в таблице указывают первую версию браузера, которая полностью поддерживает этот метод.
Метод | |||||
---|---|---|---|---|---|
findIndex() | 45.0 | 12.0 | 25.0 | 7.1 | 32.0 |
Синтаксис
array.findIndex(function(currentValue, index, arr), thisValue)
Значения параметров
Параметр | Описание | ||||||||
---|---|---|---|---|---|---|---|---|---|
function(currentValue, index,arr) | Требуемый. Функция, выполняемая для каждого элемента массива. Аргументы функции:
|
||||||||
thisValue | Необязательный. Значение, которое должно быть передано функции, которая будет использоваться в качестве ее "этого" значения. Если этот параметр пуст, то значение "не определено" и будет принят в качестве "этого" значения |
Технические детали
Возвращаемое значение: | Возвращает индекс элемента массива, если какой-либо из элементов массива проходит тест, в противном случае он возвращает -1 |
---|---|
Версия JavaScript: | ECMAScript 6 |
Еще примеры
Пример
Получить индекс первого элемента в массиве, который имеет значение выше определенного числа:
<p>Минимальный возраст: <input type="number" id="ageToCheck" value="18"></p>
<button onclick="myFunction()">Попробовать</button>
<p>Любого указанного возраста: <span id="demo"></span></p>
<script>
var ages = [4, 12, 16, 20];
function checkAdult(age) {
return age >= document.getElementById("ageToCheck").value;
}
function myFunction() {
document.getElementById("demo").innerHTML = ages.findIndex(checkAdult);
}
</script>
Попробуйте сами »
Связанные страницы
JavaScript учебник: JavaScript Массивы
JavaScript учебник: JavaScript Итерация массива