4 способа найти элемент в массиве, а также некоторые варианты использования, объясненные с примерами.

Массивы — это строительные блоки для веб-приложений на основе данных. Мы можем легко хранить и манипулировать данными с помощью массива.

Сегодня мы рассмотрим 4 способа поиска элемента в массиве, а также несколько вариантов использования, объясненных на примерах.

Знаю, знаю…

1. найти()

Метод find() возвращает первый элемент, который возвращает значение true для переданного условия обратного вызова, в противном случае возвращает undefined, если все элементы возвращают значение false для условия обратного вызова.

const numbers = [1, 3, 4, 6, 10];
numbers.find(element => element > 6); // 10
numbers.find(element => element > 10); // undefined

2. найтиИндекс()

Метод findIndex() возвращает индекс первого элемента, который возвращает true для переданного условия обратного вызова, в противном случае возвращает -1, если все элементы возвращают false для условия обратного вызова.

const numbers = [1, 3, 4, 6, 10];
numbers.findIndex(element => element > 6); // 4
numbers.findIndex(element => element > 10); // -1

Методы поиска полезны, когда вы точно не знаете, что ищете, но знаете, как это определить. Например, вы знаете адрес электронной почты пользователя, но не весь объект.

3. индекс ()

Метод indexOf() возвращает индекс первого элемента, соответствующего переданному элементу, в противном случае возвращает -1.

const numbers = [1, 3, 4, 6, 10];
numbers.indexOf(10); // 4
numbers.indexOf(16); // -1

indexOf() использует ту же логику сравнения, что и === . Следовательно, использование его в массиве Object не будет хорошей идеей.

4. последний индекс

Методы lastIndexOf() аналогичны indexOf(), которые мы видели выше, с той лишь разницей, что поиск начинается с конца массива.

Таким образом, рекомендуется использовать lastIndexOf(), если вы знаете, что у элемента больше шансов оказаться во второй половине.

const numbers = [1, 3, 4, 6, 10];
numbers.lastIndexOf(10); // 4
numbers.lastIndexOf(16); // -1

Методы indexOf() полезны, когда вы точно знаете, что ищете. Например, лучше всего использовать их для примитивных типов данных, таких как числа или строки.

Краткое содержание

Подводя итог, я бы предложил использовать следующее:

  • find(): когда не знаешь, что ищешь, но знаешь, как это должно выглядеть.
  • findIndex(): чтобы получить индекс элемента.
  • indexOf(): когда вы точно знаете, что ищете, и хотите получить индекс элемента.
  • lastIndexOf(): когда вы знаете, что ищете, вы знаете, что это где-то в конце, и вам нужен индекс элемента.
  • когда элементы массива являются объектами, find() и findIndex() - это путь.

Это все на данный момент. Я надеюсь, что вы найдете эту статью полезной! Если у вас есть какие-либо отзывы или вопросы, пожалуйста, не стесняйтесь задавать их в комментариях ниже.

Чтобы узнать больше таких статей, подписывайтесь на меня в Твиттере.

До следующего раза!

Ресурсы

МДН документы

Первоначально опубликовано на https://theanshuman.dev 21 февраля 2022 г.

Больше контента на plainenglish.io. Подпишитесь на нашу бесплатную еженедельную рассылку новостей. Получите эксклюзивный доступ к возможностям написания и советам в нашем сообществе Discord.