const {tap, of, map} = rxjs;

of(1, 2, 3, 4, 5)
  .pipe(
    tap((v) => document.body.insertAdjacentHTML('beforeend', `<div>Value before map: ${v}</div>`)),
    map((v) => v * v),
    tap((v) => document.body.insertAdjacentHTML('beforeend', `<div>Value after map: ${v}</div>`))
  )
  .subscribe((v) => console.log(v));

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

  1. https://cdnjs.cloudflare.com/ajax/libs/rxjs/7.8.1/rxjs.umd.min.js