RXJS (Reactive eXtensions For JavaScript) 는 리액티브 프로그래밍을 Javascript 에서 지원하기 위해 만들어진 라이브러리 입이다.
리액티브 프로그래밍이란 이벤트나 배열 같은 데이터 스트림과 전파를 중심으로 하여 변화에 유연하게 반응하는 프로그래밍 패러다임을 의미한다.
Observable 은 데이터를 생산하여 방출하는 객체라고 할 수 있다. Observable 로부터 데이터를 방출 받기 위해선 구독을 하면된다. Observable 은 구독자에 대한 자세한 정보는 몰라도 되며 단지 자신을 구독한 구독자(Subscriber) 에게 데이터를 방출하기만 하면 된다.
일반적인 옵저버블을 Cold Observable 이라고 부르며 이러한 Observeble은 구독 되기 전까지는 동작하지 않는다.
Observable을 구독한 객체를 Subscriber (구독자) 라고 부른다.