Observables vs Promises
Both Promises
and Observables
provide us with abstractions that help us deal with the asynchronous nature of our applications. However, there are important differences between the two:
- As seen in the example above,
Observables
can define both the setup and teardown aspects of asynchronous behavior. Observables
are cancellable.- Moreover,
Observables
can be retried using one of the retry operators provided by the API, such asretry
andretryWhen
. On the other hand,Promises
require the caller to have access to the original function that returned the promise in order to have a retry capability.