→ 구독 요청시 filtering하는 연산자를 넣어서 이벤트(onNext)들을 filter하여 선택적인 emit을 하기위한 연산자.

1. ignoring operator

 1) ignoreElements()

Untitled

example(of: "ignoreElements") {
    let strikes = PublishSubject<String>()
    let disposeBag = DisposeBag()
    
    strikes
        .ignoreElements()
        .subscribe{ event in
            print(event,"you are out")
        }.disposed(by: disposeBag)
    
    strikes.onNext("X")
    strikes.onNext("EGGEG")
    strikes.onCompleted()
}
/*
--- Example of:ignoreElements---
completed you are out
*/

completed 이벤트만 처리된 것을 알 수 있다.

2 elementAt

→ 입력한 인덱스 번호만 이벤트 수신

example(of: "element at ") {
    let strikes = PublishSubject<String>()

    
    strikes.element(at: 2)
        .subscribe(
            onNext:{
                print($0)
            }
        ).disposed(by: disposeBag)
    strikes.onNext("first")
    strikes.onNext("second")
    strikes.onNext("third")
}
//output = third

3. filter

example(of: "filter") {
    Observable.of(1,2,3,4,5,6,7)
        .filter{ $0%2 == 0}
        .subscribe{
            print($0)
        }.disposed(by: disposeBag)
}
/*
--- Example of:filter---
next(2)
next(4)
next(6)
completed
*/