combineLatest
当多个 Observables 中任何一个发出一个元素,就发出一个元素。这个元素是由这些 Observables 中最新的元素,通过一个函数组合起来的

combineLatest 操作符将多个 Observables 中最新的元素通过一个函数组合起来,然后将这个组合的结果发出来。这些源 Observables 中任何一个发出一个元素,他都会发出一个元素(前提是,这些 Observables 曾经发出过元素)。
演示
tips: 可与 zip 比较学习
1. let disposeBag = DisposeBag()
3. let first = PublishSubject<String>()
4. let second = PublishSubject<String>()
6. Observable.combineLatest(first, second) { $0 + $1 }
7. .subscribe(onNext: { print($0) })
8. .disposed(by: disposeBag)
10. first.onNext("1")
11. second.onNext("A")
12. first.onNext("2")
13. second.onNext("B")
14. second.onNext("C")
15. second.onNext("D")
16. first.onNext("3")
17. first.onNext("4")
输出结果:
1. 1A
2. 2A
3. 2B
4. 2C
5. 2D
6. 3D
7. 4D
