Skip to main content

Що таке оператор в RxJS?

Оператор в RxJS - це функція, яка змінює, фільтрує або комбінує потік даних (Observable).


Приклад на пальцях:

Ти слухаєш потік чисел: 1, 2, 3, 4 Хочеш залишити тільки парні → використовуєш оператор filter Хочеш помножити на 10 → використовуєш map

ts
import { of } from 'rxjs'; import { filter, map } from 'rxjs/operators'; of(1, 2, 3, 4).pipe( filter(n => n % 2 === 0), map(n => n * 10) ).subscribe(val => console.log(val));

Виведе: 20, 40


Навіщо потрібні оператори:

  • обробити дані (map, filter, tap)
  • керувати часом (debounceTime, delay, throttleTime)
  • змінювати потоки (switchMap, mergeMap, concatMap)
  • зупиняти (take, takeUntil)
  • комбінувати (combineLatest, withLatestFrom)

Як працюють:

Оператори використовуються всередині .pipe(...) - це як ланцюжок обробки:

ts
observable.pipe( operator1, operator2, ... )

Висновок:

Оператор в RxJS - це інструмент, який перетворює потік даних. За його допомогою ти кажеш: «не просто слухай усе, а обробляй ось так». Без операторів RxJS був би просто слухачем. З ними, він як потоковий процесор.

Коротка відповідь

Для співбесіди
Premium

Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.