Возвращает индекс первого элемента в массиве, который соответствует условию в переданной функции.

Спецификация: ECMAScript 2015 (6th Edition, ECMA-262)
array.findIndex(callback(currentValue, index, arr), thisArg)

Параметры

callback
Функция обратного вызова, которая будет выполнена один раз для каждого элемента в массиве. Функция принимает следующие параметры:
  • currentValue – текущий обрабатываемый элемент массива.
  • index – индекс текущего обрабатываемого элемента массива.
  • arr – массив, к которому принадлежит текущий элемент (по которому происходит проход).
thisArg
Необязательный параметр. Объект, на который может ссылаться ключевое слово this в функции callback. Если аргумент thisArg опущен, в качестве значения this используется undefined (в конечном счете this будет зависеть от обычных правил контекста выполнения функции).

Возвращает индекс первого элемента в массиве, который соответствует условию в переданной функции, в противном случае он возвращает -1.

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

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

Диапазон элементов, обрабатываемых с помощью метода findIndex() устанавливается перед первым вызовом функции обратного вызова callback. Если элементы были добавлены к массиву после её вызова, то на таких элементах функция callback вызвана не будет.

Если существующие, непосещённые элементы массива изменяются функцией callback, то их значения, переданные в функцию, будут значениями на тот момент времени, когда метод findIndex посетит их.

Примечание: Функция callback вызывается только для индексов массива, имеющих присвоенные значения. callback не вызывается для индексов, которые были удалены или которым значения не присваивались.

Примечание: Метод findIndex() не изменяет массив, для которого он был вызван.

В следующем примере метод findIndex() позволяет получить индекс первого элемента в массиве, который является нечётным числом:

Выполнить код »

Следующий пример иллюстрирует использование аргумента thisArg, который указывает на объект, на который мы можем ссылаться с использованием ключевого слова this внутри функции обратного вызова:

Выполнить код »

Комментарии

пожелания к комментариям…
  • Приветствуются комментарии, соответствующие теме урока: вопросы, ответы, предложения.
  • Одну строчку кода оборачивайте в тег <code>, несколько строчек кода — в теги <pre><code>...ваш код...</code></pre>.
  • Допускаются ссылки на онлайн-песочницы (codepen, plnkr, JSBin и др.).