对rxjs观测值感到困惑

对rxjs观测值感到困惑,rxjs,Rxjs,我正在读一段代码 从'rxjs/Observable'导入{Observable}; //允诺 const myPromise=新承诺((解析)=>{ log('Hello from Promise'); 决议(1); }); 然后(o=>console.log(o)); 然后(o=>console.log(o)); //可观察 常量myObservable=可观察。创建((观察者)=>{ log('Hello from Observable'); 观察员:下一(1); 观察员:下一个(2);

我正在读一段代码

从'rxjs/Observable'导入{Observable};
//允诺
const myPromise=新承诺((解析)=>{
log('Hello from Promise');
决议(1);
});
然后(o=>console.log(o));
然后(o=>console.log(o));
//可观察
常量myObservable=可观察。创建((观察者)=>{
log('Hello from Observable');
观察员:下一(1);
观察员:下一个(2);
观察员:下一个(3);
});
myObservable.subscribe(o=>console.log(o));
myObservable.subscribe(o=>console.log(o));
上述代码的输出为

Hello from Promise
Hello from Observable
1
2
3
Hello from Observable
1
2
3
1
1
除了最后两个,我什么都懂 1. 1. 在输出中,最后两个1,1从何处弹出

源代码来自本文


请帮忙。

最后一个11来自承诺

myPromise.then(o => console.log(o));
myPromise.then(o => console.log(o));
由于您的observable是一个同步函数,但promise resolve是异步的,因此它最终被调用