Сходства:
Отличия:
| Особенность | Promise | Observable |
|---|---|---|
| Значение/события | Возвращает одно значение или ошибку. | Возвращает 0 или более значений со временем. |
| Отмена | Нельзя отменить после запуска. | Можно отменить подписку. |
| Множество подписчиков | Единоразовое выполнение независимо от подписчиков. | Новая отписка обычно приводит к новому выполнению (холодный Observable). |
| Ленивость | Сразу начинает выполняться после создания. | Начинает выполняться только после подписки. |
| Операторы | Нет встроенных операторов для трансформации. | Имеет богатый набор операторов (map, filter, merge и др.). |
| Примеры использования | HTTP-запросы, отложенные действия. | События UI, WebSocket-соединения, интервалы. |
Пример Observable:
typescript
Пример Promise:
javascript