JavaScript Array findIndex()

Определение и использование

findIndex() Метод возвращает индекс первого элемента массива, который проходит тест (как функцию, предоставленную)

findIndex() Метод выполняет функцию для каждого элемента, существующего в массиве:

  • Если найти массивный элемент, для которого функция возвращает значение true, то findIndex() возвращает индекс этого массивного элемента (и не проверяет оставшиеся значения)
  • В противном случае возвращает -1

Комментарий:findIndex() Не выполняет функцию для элементов массива без значений.

Комментарий:findIndex() Не изменяет исходный массив.

Пример

Пример 1

Получите индекс первого элемента массива, значение которого равно или больше 18:

var ages = [3, 10, 18, 20];
function checkAdult(age) {
  return age >= 18;
}
function myFunction() {
  document.getElementById("demo").innerHTML = ages.findIndex(checkAdult);
}

Попробуйте сами

Пример 2

Получить индекс первого элемента массива, значение которого выше определенного числа:

<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>

Попробуйте сами

Синтаксис

массив.findIndex(function(currentValue, index, arr) thisValue)

значение параметра

Параметры Описание
function(currentValue, index, arr) Обязательно. Функция, выполняемая для каждого элемента массива.

Функциональные параметры:

Параметры Описание
currentValue Обязательно. Значение текущего элемента.
index Опционально. Индекс текущего элемента в массиве.
arr Опционально. Массив объекта, к которому принадлежит текущий элемент.
thisValue

Опционально. Значение, передаваемое функции для использования в качестве ее значения "this".

Если этот параметр пуст, то значение "undefined" передается в качестве его значения "this".

Технические детали

Возвратное значение: Если любой элемент массива проходит тест, то возвращается индекс элемента массива, в противном случае возвращается -1.
Версия JavaScript: ECMAScript 6

Поддержка браузеров

Числа в таблице указывают на первую версию браузера, которая полностью поддерживает этот метод.

Chrome Edge Firefox Safari Opera
Chrome 45 Edge 12 Firefox 25 Safari 7.1 Opera 32
сентябрь 2015 года июль 2015 года июль 2014 года сентябрь 2014 года сентябрь 2015 года

Комментарий:Internet Explorer не поддерживается findIndex() Методы.

Соответствующие страницы

Урок:Массив JavaScript

Урок:Const массива JavaScript

Урок:Методы массива JavaScript

Урок:Сортировка массива JavaScript

Урок:Итерация массива JavaScript