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