Spec-Zone.ru › RxJS

filter

function stable operator

Фильтрует элементы, испускаемые исходным Observable, испуская только те, которые удовлетворяют заданному предикату.

filter<T>(predicate: (value: T, index: number) => boolean, thisArg?: any): MonoTypeOperatorFunction<T>

Параметры

predicate (value: T, index: number) => boolean

Функция, которая оценивает каждый испускаемый исходным Observable элемент. Если она возвращает true, элемент испускается; если false, элемент не передаётся в выходное Observable. Параметр index представляет собой номер i для i-го испускания исходного элемента, произошедшего с момента подписки, начиная с номера 0.

thisArg any

Необязательный. По умолчанию undefined.

Необязательный аргумент для определения значения this в функции predicate.

Возвращает

MonoTypeOperatorFunction<T>: Функция, возвращающая Observable, который испускает элементы из исходного Observable, удовлетворяющие заданному predicate.

Описание

Подобно Array.prototype.filter(), она испускает значение из источника только если оно проходит проверку критерии.

filter marble diagram

Аналогично известному методу Array.prototype.filter, этот оператор берёт значения из исходного Observable, пропускает их через функцию predicate и испускает только те, которые дали true.

Пример

Испускать только события клика, целевым элементом которых является элемент DIV

import { fromEvent, filter } from 'rxjs';

const div = document.createElement('div');
div.style.cssText = 'width: 200px; height: 200px; background: #09c;';
document.body.appendChild(div);

const clicks = fromEvent(document, 'click');
const clicksOnDivs = clicks.pipe(filter(ev => (<HTMLElement>ev.target).tagName === 'DIV'));
clicksOnDivs.subscribe(x => console.log(x));

Перегрузки

filter(predicate: (this: A, value: T, index: number) => value is S, thisArg: A): OperatorFunction<T, S>

Параметры

predicate (this: A, value: T, index: number) => value is S
thisArg A

Возвращает

OperatorFunction<T, S>

filter(predicate: (value: T, index: number) => value is S): OperatorFunction<T, S>

Параметры

predicate (value: T, index: number) => value is S

Возвращает

OperatorFunction<T, S>

filter(predicate: BooleanConstructor): OperatorFunction<T, TruthyTypesOf<T>>

Параметры

predicate BooleanConstructor

Возвращает

OperatorFunction<T, TruthyTypesOf<T>>

filter(predicate: (this: A, value: T, index: number) => boolean, thisArg: A): MonoTypeOperatorFunction<T>

Параметры

predicate (this: A, value: T, index: number) => boolean
thisArg A

Возвращает

MonoTypeOperatorFunction<T>

filter(predicate: (value: T, index: number) => boolean): MonoTypeOperatorFunction<T>

Параметры

predicate (value: T, index: number) => boolean

Возвращает

MonoTypeOperatorFunction<T>

См. также

  • distinct
  • distinctUntilChanged
  • distinctUntilKeyChanged
  • ignoreElements
  • partition
  • skip

© 2015–2022 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors.
Code licensed under an Apache-2.0 License. Documentation licensed under CC BY 4.0.
https://rxjs.dev/api/operators/filter

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API