Функция Underscore.js _.where()

Опубликовано: 7 Октября, 2022

Underscore.js — это библиотека JavaScript, которая предоставляет множество полезных функций, которые сильно помогают в программировании, таких как карта, фильтр, вызовы и т. д., даже без использования каких-либо встроенных объектов.
Функция _.where() используется для поиска всех элементов, соответствующих условию поиска. Предположим, чтобы найти все сведения о студентах класса, затем примените функцию _.where() к списку всех разделов и передайте условие в качестве имени раздела. Таким образом, будут отображаться имена всех студентов этого конкретного раздела.

Синтаксис:

_.where( list, [predicate], [context] )

Параметры: Эта функция принимает три параметра, упомянутых выше и описанных ниже:

  • Список: этот параметр используется для хранения списка данных.
  • Предикат: этот параметр используется для хранения тестового условия.
  • Контекст: текст, который необходимо отобразить.

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

Разница между функциями _.findWhere() и _.where(): обе функции принимают имя массива и свойство для сопоставления, но функция _.where() отображает все совпадения, тогда как функция _.findWhere) соответствует только первому соответствие.

Передача массива в функцию _.where(): Функция ._where() берет элемент из списка один за другим и соответствует указанному условию в деталях элементов. Он проверит те элементы, которые будут иметь значение «true» в свойстве «hasLong». После обхода и проверки всех элементов функция _.where() завершает работу. Будет отображен массив всех элементов с этим свойством.

Пример:

Выход:

Передача списка элементов с рядом свойств в функцию _.where(): сначала объявите весь список со всеми свойствами каждого упомянутого элемента, а затем передайте имя массива вместе со свойством, на основе которого нужно сопоставить элементы в функцию _.where(). Он будет проходить по всему списку и отображать детали всех элементов, которые соответствуют заданному условию.

Пример:

Выход:

Передача массива с числами в качестве одного из его свойств функции _.where(): объявите массив (здесь массив - «пользователи»), затем выберите одно условие, которое необходимо проверить, например, «id», в деталях которого есть числа, и, наконец, console.log окончательный ответ. Окончательный вывод будет содержать все совпадающие элементы.

Пример:

Выход:

Функция _.where() как функция _.findWhere(): Функция _.where() также может работать как функция _.findWhere() при некоторых условиях. Например, если в массиве есть только один такой элемент, который соответствует заданному условию. Так как здесь на выходе будет массив, содержащий только один элемент.

Пример:

Выход: