The timeInterval
operator converts a source Observable into an Observable that emits
indications of the amount of time lapsed between consecutive emissions of the source Observable. The
first emission from this new Observable indicates the amount of time lapsed between the time when the
observer subscribed to the Observable and the time when the source Observable emitted its first item.
There is no corresponding emission marking the amount of time lapsed between the last emission of the
source Observable and the subsequent call to onCompleted
.
Sample Code
var source = Rx.Observable.timer(0, 1000)
.timeInterval()
.map(function (x) { return x.value + ':' + x.interval; })
.take(5);
var subscription = source.subscribe(
function (x) { console.log('Next: ' + x); },
function (err) { console.log('Error: ' + err); },
function () { console.log('Completed'); });
Next: 0:0
Next: 1:1000
Next: 2:1000
Next: 3:1000
Next: 4:1000
Completed
timeInterval
by default operates on the timeout
Scheduler, but also has a variant that allows you to specify the
Scheduler by passing it in as a parameter.
timeInterval
is found in each of the following distributions:
rx.all.js
rx.all.compat.js
rx.time.js
(requires rx.js
or rx.compat.js
)
rx.lite.js
rx.lite.compat.js