Sobes.tech
Назад к вопросам
Junior — Middle
77

Чем отличаются методы findIndex и indexOf при поиске элементов в массиве?

Компании, где спрашивали
JetlendJetlend

Ответ от нейросети

sobes.tech AI

В Python у списков есть метод index(), а у строк и других последовательностей есть метод find(). Однако, в вопросе упомянуты findIndex и indexOf — это методы JavaScript, а не Python.

Если говорить о JavaScript:

  • indexOf ищет элемент в массиве и возвращает индекс первого вхождения или -1, если элемент не найден.
  • findIndex принимает функцию-предикат и возвращает индекс первого элемента, для которого функция вернула true, или -1, если такого нет.

Пример в JavaScript:

const arr = [5, 12, 8, 130, 44];

console.log(arr.indexOf(12)); // 1

const isLargeNumber = (element) => element > 13;
console.log(arr.findIndex(isLargeNumber)); // 3

В Python для поиска индекса элемента используется метод list.index(value), который возвращает индекс первого вхождения или вызывает исключение, если элемент не найден. Для поиска по условию можно использовать генераторы с функцией next и enumerate.