Promise 合并

/**
 * Created by 584003 on 2016/11/11.
 */
import {Observable} from 'rxjs/Observable';
import 'rxjs/add/observable/interval';
import 'rxjs/add/operator/take';
import 'rxjs/add/observable/zip';
import 'rxjs/add/observable/from';

console.log('let\'s go!');

// implement zip of Observable
const obs = Observable.interval(1000).take(7);
const obs2 = Observable.interval(2000).take(6);

const source = Observable.zip(
    obs,
    obs2,
    (o1, o2) => ({o1: o1, o2: o2})
);

source.subscribe(
    (x) => console.log('zip of Observable ->', JSON.stringify(x)),
    (error) => console.log('error:', error),
    () => console.log('source completed')
);

// implement zip of Promise
const p1 = new Promise(resolve => {
    setTimeout(() => resolve('p1-01'), 1000)
});

const p2 = new Promise(resolve => {
    setTimeout(() => resolve('p2-01'), 2000)
});

const source2 = Observable.zip(
    Observable.from(p1),
    Observable.from(p2),
    (p1, p2) => ({p1: p1, p2: p2})
);

source2.subscribe(
    x => console.log('zip of Promise ->', JSON.stringify(x)),
    e => console.log('error:', e),
    () => console.log('source2 completed')
);

console.log('game over!');
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值