RxJs异步操作和javascript promise或async等待之间的区别

时间:2019-07-25 06:03:18

标签: javascript asynchronous async-await rxjs

这可能很愚蠢,但可以帮助我解决这个问题。我开始学习RxJs,但是我可以看到RxJs用于反应式编程,我们可以在其中订阅事件并处理多个事件以及与Observable进行链接的过程,我对此感到怀疑,例如在javascript中使用async / await或promises有什么区别因为他们也在用javascript执行异步流程。与异步/等待相比的任何优势。

2 个答案:

答案 0 :(得分:0)

我建议您在网络上进行一些搜索,因为这样可以为您提供更好的答案和对the difference between asynchronous promise and observable objects的看法

主要区别在于,当您希望异步完成代码时,您可以使用promise;在变量值被更改时(当您通过订阅变量的事件来观察变量时)得到通知时,可以使用observables。

>

答案 1 :(得分:0)

主要区别:Promise是一次性的,而Observable被假定多次发射。

事件,HTTP流,间隔计时器-都不太适合Promise。因此,ObservablePromise更像是生成器。

说,如果服务器在5秒钟内没有响应,我们需要限制请求服务器的点击,使其超时时间较短。我们可以使用包装在throttle中的事件处理程序,然后运行基于Promise的fetch,并在Promise.race()上附加 promisified 超时。

或者我们只能使用rxjs将完整的流程描述为一组运算符。