【问题标题】:Difference between RxJs async operations and javascript promise or async awaitRxJs 异步操作和 javascript 承诺或异步等待之间的区别
【发布时间】:2019-12-03 08:06:12
【问题描述】:

这可能是一个愚蠢的问题,但请帮我解决这个问题。我开始学习 RxJs,但我可以看到 RxJs 用于响应式编程,我们可以订阅事件并处理多个事件并处理与可观察的链接,我怀疑在 javascript 中使用 async/await 或 promise 有什么区别因为他们也在 javascript 中执行异步流程。与 async/await 相比的任何优势。

【问题讨论】:

标签: javascript asynchronous async-await rxjs


【解决方案1】:

我建议你在网上搜索一下,因为这会给你一个更好的答案和对the difference between asynchronous promise and observable objects的看法

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

【讨论】:

    【解决方案2】:

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

    事件、HTTP 流、间隔计时器 - 这些都不适合 Promise。所以Observable 更像是生成器而不是Promise

    假设我们需要限制点击请求服务器有一些短暂的超时,以防服务器在 5 秒内没有响应。我们可以使用包裹在throttle 中的事件处理程序,然后运行基于Promise 的fetch,并使用Promise.race() 附加promisified 超时。

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-04-03
      • 2021-10-07
      • 2017-06-15
      • 1970-01-01
      • 2018-10-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多