Реактивные расширения для JavaScript (RxJS) - это набор библиотек для создания асинхронных программ и программ, основанных на событиях, с использованием наблюдаемых коллекций и композиции стилей Array Extras.

С сайта RxJS:

Реактивные расширения для JavaScript (RxJS) - это набор библиотек для создания асинхронных программ и программ, основанных на событиях, с использованием наблюдаемых последовательностей и плавных операторов запросов, которые многие из вас уже знают по дополнительным функциям Array# в JavaScript. Используя RxJS, разработчики представляют асинхронные потоки данных с помощью Observables, запрашивают асинхронные потоки данных с помощью множества наших операторов и параметризуют параллелизм в потоках асинхронных данных с помощью планировщиков. Проще говоря, RxJS = Observables + Operators + Schedulers.

Независимо от того, создаете ли вы веб-приложение на JavaScript или серверное приложение на Node.js, вам придется иметь дело с асинхронным программированием и программированием на основе событий. Хотя появляются некоторые шаблоны, такие как шаблон Promise, обработка исключений, отмена и синхронизация сложны и подвержены ошибкам.

Используя RxJS, вы можете представлять несколько потоков асинхронных данных (которые поступают из различных источников, например, котировки акций, твиты, компьютерные события, запросы веб-служб и т. Д.) И подписываться на поток событий с помощью объекта Observer. Observable уведомляет подписанный экземпляр Observer всякий раз, когда происходит событие.

Поскольку наблюдаемые последовательности являются потоками данных, вы можете запрашивать их, используя стандартные операторы запросов, реализованные типом Observable. Таким образом, с помощью этих операторов вы можете легко фильтровать, проецировать, агрегировать, составлять и выполнять операции на основе времени с несколькими событиями. Кроме того, существует ряд других операторов, специфичных для реактивного потока, которые позволяют писать мощные запросы. Отмена, исключения и синхронизация также корректно обрабатываются с помощью методов объекта Observable.

Ресурсы

Связанные теги