banner

Блог

Aug 04, 2023

Руководство по методу JavaScript Array Filter()

В JavaScript метод filter() — это итеративный метод, который вызывает функцию обратного вызова один раз для каждого элемента массива. Если функция обратного вызова возвращает true, она включает этот элемент в возвращаемый массив. Метод filter() также называется методом копирования, поскольку он возвращает неполную копию массива, содержащую те же элементы, что и исходный массив.

Метод JavaScript array filter() позволяет фильтровать массив, чтобы видеть только те элементы, которые соответствуют заданному условию. Он использует функцию обратного вызова для перебора каждого элемента массива и возвращает только те, которые соответствуют указанному условию.

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

Метод filter() принимает два именованных аргумента: функцию обратного вызова и необязательный объект. Функция обратного вызова принимает три аргумента:

Индекс аргументов массива не является обязательным.

Метод filter() создает новый массив со всеми элементами. Существует три разных способа написания синтаксиса метода filter(). Синтаксис следующий:

callbackFn выполняет каждый элемент массива. Он возвращает истинное значение, чтобы сохранить элемент в массиве. CallbackFn вызывается со следующими аргументами:

Подробнее о JavaScript3 способа использования среза массива в JavaScript

Чтобы использовать метод filter() в JavaScript, нам нужно выполнить четыре шага:

Вот пример, в котором метод filter() используется для фильтрации массива на основе критериев поиска марок автомобилей, начинающихся с буквы «B».

В этом примере метод filter() вызывается для массива cars, чтобы вернуть только марки автомобилей, начинающиеся с буквы «B». Функция filterItems принимает два параметра: arr и query. который возвращает новый массив с соответствующим значением запроса. Внутренний метод filterItemМетод filter() вызывается для массива автомобилей, который будет фильтровать массив на основе запроса.

Метод filter() обходит массив и проверяет каждый элемент, чтобы определить, соответствует ли он запросу. Возвращается новый массив с тремя брендами: Bentley, BMW и Bertone.

Метод filter() не изменяет исходный массив, а вместо этого возвращает новый массив, содержащий только те элементы, которые прошли проверку внутри функции.

Ниже приведен код, который фильтрует массив чисел и создает новый массив только с четными элементами. Шаги по использованию фильтра() для массива чисел:

Вот пример, демонстрирующий работу программы.

В приведенном выше коде мы определили массив чисел NumberArr. Мы использовали метод filter() для NumberArr и передали функцию, которая определяла, является ли каждый элемент четным, используя оператор % по модулю, чтобы проверить, делится ли число на два. Если число четное, функция возвращает true, и элемент включается в новый массив EvenNumbers. Если число нечетное, функция возвращает false, и число исключается из нового массива.

Ниже приведен код, который фильтрует массив объектов и создает новый массив только с достоверными элементами. Шаги по использованию фильтра() для массива объектов:

Вот пример фрагмента кода, демонстрирующего работу программы.

В приведенном выше коде мы определили массив объектов фрилансеров. Мы использовали метод filter() для массива фрилансеров и передали функцию, которая проверяет, владеет ли каждый фрилансер навыками JavaScript. Если навык соответствовал условию, объект включался в новый массив filter_freelancers. Если навык не соответствует, функция возвращает false, и объект исключается из нового массива. Результат возвращает новый массив с двумя фрилансерами, Гарри и Дэвидом, владеющими JavaScript.

Ниже приведен код, который фильтрует все простые числа из массива и создает новый массив только из простых чисел. Шаги по использованию фильтра():

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

ДЕЛИТЬСЯ