Javascript 如何使用以及何时使用&;RxJS中的thenDo运算符

Javascript 如何使用以及何时使用&;RxJS中的thenDo运算符,javascript,rxjs5,Javascript,Rxjs5,我正在尝试学习RxJS v5,我在手册中看到了和when和thenDo操作符。我很难理解它们是如何工作的。 我尝试了以下代码来组合我的两个观察值: this.ob1 = Rx.Observable.interval(500); this.ob2 = Rx.Observable.interval(750); this.combined = Rx.Observable.when( this.ob1.and(this.ob2).thenDo((first, second) => {

我正在尝试学习RxJS v5,我在手册中看到了
when
thenDo
操作符。我很难理解它们是如何工作的。

我尝试了以下代码来组合我的两个观察值:

this.ob1 = Rx.Observable.interval(500);
this.ob2 = Rx.Observable.interval(750);

this.combined = Rx.Observable.when(
    this.ob1.and(this.ob2).thenDo((first, second) => {
        return {first, second}
    })
);

this.combined.subscribe(e => console.log('observable ' + e));
但是,我得到以下错误:
TypeError:this.ob1.and不是函数

我做错了什么?这些操作符应该如何使用?他们要解决的具体用例是什么