What are the specific promises made by observables in JavaScript?

更新于
2026-09-30 18:18:32
1阅读来源:SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计529个文字,预计阅读时间需要3分钟。

What are the specific promises made by observables in JavaScript?

在JavaScript中,`Observables` 和 `lazy evaluation` 是两个关键概念。

例如,对于 `Promise`,无论是否调用 `then`,`Promise` 都会被立即执行。而 `Observable` 则不同,它仅在真正需要结果时才会被创建并执行。这意味着 `Observable` 只在需要时才会处理数据,从而提高了效率。

gistfile1.txt

1.observables 是lazy evaluation。 比如下面的代码片段,对于promise,无论是否调用then,promise都会被立即执行;而observables却只是被创建,并不会执行,而只有在真正需要结果的时候,如这里的foreach,才会被执行。 再举个例子,比如这里不是用setTimeout模拟异步操作,而是去请求一个url,那对于promise来说,then的作用是处理返回结果,而http请求在第一步就已经发送了;相反,对于observable来说,由于它发现你其实现在并不需要异步调用的结果,所以它干脆就不发送请求,而只有你真正需要响应数据的时候才会发送请求。

阅读全文

本文共计529个文字,预计阅读时间需要3分钟。

What are the specific promises made by observables in JavaScript?

在JavaScript中,`Observables` 和 `lazy evaluation` 是两个关键概念。

例如,对于 `Promise`,无论是否调用 `then`,`Promise` 都会被立即执行。而 `Observable` 则不同,它仅在真正需要结果时才会被创建并执行。这意味着 `Observable` 只在需要时才会处理数据,从而提高了效率。

gistfile1.txt

1.observables 是lazy evaluation。 比如下面的代码片段,对于promise,无论是否调用then,promise都会被立即执行;而observables却只是被创建,并不会执行,而只有在真正需要结果的时候,如这里的foreach,才会被执行。 再举个例子,比如这里不是用setTimeout模拟异步操作,而是去请求一个url,那对于promise来说,then的作用是处理返回结果,而http请求在第一步就已经发送了;相反,对于observable来说,由于它发现你其实现在并不需要异步调用的结果,所以它干脆就不发送请求,而只有你真正需要响应数据的时候才会发送请求。

阅读全文