옵저버블

·2023년 2월 1일
0

RxJS

목록 보기
9/9

addEventListener는 이벤트를 처리하기위해 콜백을 인자로 등록해야 하지만 옵저버블패턴은 처리방식이 다르다.

이벤트를 옵저버블화하면 옵저버블객체가 반환된다. 이단계는 함수선언과 같이 옵저버블을 선언한것일 뿐이다.

addEventListener함수는 이벤트와 콜백을 동시에 연결하여 하나의 명령문으로 실행한다.

옵저버블은
이벤트를 옵저버블화하여 옵저버블객체 생성하는 명령문
옵저버블객체에 구독핸들러 등록하는 명령문

2가지 명령문을 분리하여 실행할 수 있다.


addEventListener명령문은 이벤트가 발생하지 않아도 핸들러가 메모리에 상주하여 대기한다.

옵저버블패턴은 구독핸들러 명령문이 실행되기전에는 옵저버블객체는 선언만 되있는 상태이며 구독핸들러는 메모리에 등록되지 않는다.



const obs = of(1,2,3);

1, 2, 3 3개의 숫자를 가진 데이터스트림(값을 방출하는 이벤트)에 옵저버블화하는 of함수를 사용하면 옵저버블객체를 반환한다.

obs.subscribe(val=>console.log(val));

옵저버블객체에 구독핸들러를 연결하는 명령문이 실행되면 이벤트가 시작하여 1,2,3값이 각각 방출되면서 구독핸들러에 방출데이터가 전달된다.

0개의 댓글