Top RxJS Interview Questions (2020) | CodeUsingJava
Most frequently asked RxJS Interview Questions
What is RxJS?
RxJS is a library for reactive programming using Observables, to make it easier to compose asynchronous or callback-based code.
It is a powerful tool that turns complicated series of actions into concise code that is easy to manipulate.
What is Stream in RxJS?
A stream is a sequence of data elements made available over time.
A stream can be thought of as items on a conveyor belt being processed one at a time rather than in large batches.
The reason for it being called a stream is that you should think of the data as continuous and not really having an end, unless you explicitly define an end.
What is Observable?
Observable represents the idea of an invokable collection of future values or events.
In RxJS, we model asynchronous data streams using observable sequences or just called observables, too.
What is the benefits of RxJS Observables on promises?
Observables provide a feed, so that you can receive data from the same object multiple times.
So observables work like streams of data.
What is the difference between Cold and Hot Observables ?
Cold observables start to run upon subscription, so observable sequence only starts pushing values to observers when subscribe is called.
Hot observables produce values even before subscriptions is made.
Hot observables such as mousemove events, stock pickers or WebSocket connections, are already produced in values even before subscription is active
What is the difference between React and RxJS ?
What are RxJS Operators ?
An operator is a method that acts on an Observable and changes the stream in some way.
The purpose of operator is to modify or filter the originally emitted values in a way that we normally need for the project tasks.
What are observers ?
Observer is a set of callbacks that are informative to listen to the values of the Observable.
Observers may listen or subscribe to the data being observed.
What are the advantages of Observable over Promise ?
An Observable is like a Stream. It enables to pass zero or more events where the callback is called for each event.
Observable is preferred over Promise because it provides the features of Promise and more.
With Observable we can handle a single or multiple events.
Observable also has the advantage over Promise to be cancelable.
Observable allows lazy initialization.
Observable allows to format data
Observable provides operators like map, forEach, reduce etc
What is Subscriptions ?
Subscriptions are objects returned when an Observable is subscribed.
Listening to the stream is called subscribing.
What is Subject ?
Subjects are unique types of Observers, that enables you to subscribe to other Observables and also listen to published data