- Observable vs Promise
Observable vs Promise
我们来直奔主题。我们创建了一个叫为 Observable 的东西。它是一个异步的概念,与 Promise 非常相似,一旦数据达到就可以触发监听。
let stream$ = Rx.Observable.from([1,2,3])stream$.subscribe( (value) => {console.log('Value',value);})// 1,2,3
如果使用 Promise 的话,相对应的写法如下:
let promise = new Promise((resolve, reject) => {setTimeout(()=> {resolve( [1,2,3] )})})promise.then((value) => {console.log('Value',data)})
Promises 欠缺如下能力:
- 不能生产多个值
- 不能重试
- 不能真正地玩转其它异步思想
