reduce
제공된 초기값(0)에서 시작해서, source observable 이 방출할 때마다 값을 가공한다.
Observable.from((1...10))
// .reduce(0, accumulator: { summary, newValue in
// return summary + newValue
// })
.reduce(0, accumulator: +)
.subscribe(onNext: {
print($0)
})
.disposed(by: disposeBag)
----------reduce----------
55
scan
매번 값이 들어올 때마다 변형된 값들을 방출한다.
print("----------scan----------")
Observable.from((1...10))
.scan(0, accumulator: +)
.subscribe(onNext: {
print($0)
})
.disposed(by: disposeBag)
----------scan----------
1
3
6
10
15
21
28
36
45
55
' iOS > RxSwift' 카테고리의 다른 글
RxSwift - Error 관리 (0) | 2022.11.07 |
---|---|
RxSwift - TimeBasedOperators (0) | 2022.11.07 |
RxSwift - 하나의 Observable 가 Trigger 역할 후 Observable 들을 조합하는 방법(withLatestFrom, sample, amb, switchLatest) (0) | 2022.11.06 |
RxSwift - 여러 개의 Observable 을 합치는 방법(startWith, concat, merge, zip) (0) | 2022.11.06 |
RxSwift - 여러 개의 Observable 을 합치는 방법(combineLatest) (0) | 2022.11.06 |