Зачем тратить время на написание длинных циклов for, если можно использовать методы экземпляра. Это сделает наш код короче и четко заявит о нашем намерении. Циклы For наверняка будут делать то же самое, но иногда это делает наш код неоднозначным для чтения и сложным в обслуживании.

Я разделил методы на группы, чтобы упростить понимание. Первая группа вернет один элемент, когда условие будет выполнено, а вторая группа вернет все экземпляры.

Вы можете найти образцы кодов по этой ссылке.

Возвращает первый экземпляр результата поиска в массиве.

найти

Этот метод возвращает значение первого элемента, соответствующего условию тестирования.

В этом примере мы будем искать книгу с заголовком ‘Understanding ECMAScript 6’ и извлекать все детали, включенные в этот объект.

Если условие выполнено, он вернет элемент, в противном случае возвращается undefined.

Давайте проверим этот первый пример ниже.

Есть другой способ написать это:

А вот еще более короткая версия:

findIndex

Этот метод по сути аналогичен методу find, однако на этот раз он возвращает индекс того, где был найден элемент.

И когда ничего не будет найдено, он вернет -1. Давайте посмотрим на другой пример ниже.

Здесь у нас есть массив городов, и мы ищем индекс «Кейв».

Теперь давайте попробуем передать название города, которого нет в массиве.

включает в себя

Этот метод проверяет, содержит ли массив искомый элемент, и возвращает истину или ложь. Это очень простой, но мощный метод.

Для этого мы можем просто разместить .includes после вызова массива, как таковой:

includes метод также принимает индекс в качестве второго параметра. Затем он проверит значение в массиве, начиная с предоставленного индекса, и вернет результат. Если второй параметр больше индекса того места, где расположен элемент, он вернет false.

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

фильтр

Этот метод принимает массив и возвращает новый массив, который содержит только элементы, соответствующие условию.

Давайте посмотрим на пример ниже, чтобы понять это дальше.

В этом примере мы хотим получить все цветы из категории «Кусты».

Другой способ - определить функцию обратного вызова перед ее использованием.

Шпаргалка:

find: просматривает элементы в массиве, а затем возвращает первое значение, которое возвращает значение true.

filter отфильтрует элемент через функцию, вернет все значения, удовлетворяющие условию.

findIndex: будет искать элемент и возвращать его индекс, начиная с того места, где вы хотите его искать.

includes: возвращает true, если в массиве есть искомый элемент, в противном случае - false.

Заключение

Может быть несколько способов поиска среди элементов в массиве JavaScript, но мы всегда должны учитывать удобочитаемость кода, ремонтопригодность и производительность каждого метода. Эти экземпляры массивов представляют собой небольшие мощные методы, которые мы могли бы использовать для решения наших проблем.

Считаете ли вы этот блог полезным? Не забудьте оставить отзыв в разделе комментариев.

Ресурсы

Включает для новичков | Доступ к элементам массива