garrettmac
garrettmac

Reputation: 8585

Angular2 RxJs Observables: filter vs map?

Both the Filter and Map rxjs functions seem to be ways to manipulate a rxjs Observable's stream. After tinking with them and from examples I've seen, they both seem to do the same thing.

What's the difference and when should I use one over the other?

Upvotes: 6

Views: 5188

Answers (1)

Sebastian Sebald
Sebastian Sebald

Reputation: 16856

  • Filter: Removes emitted data from the stream.
  • Map: Transforms it.

They do the exact same as the corresponding Array methods.

E.g.

const stream = Observable.of([1,2,3,4,5]);

stream
  .map(x => x * 2)
  .subscribe(x => console.log(x)); // 2,4,6,8,10

stream
  .filter(x => x > 3)
  .subscribe(x => console.log(x)); // 4,5

Maybe this site helps to understand the difference: https://www.learnrxjs.io/

Upvotes: 20

Related Questions