timeInterval

Emits an object containing the current value, and the time that has passed between emitting the current value and the previous value, which is calculated by using the provided scheduler's now() method to retrieve the current time at each emission, then calculating the difference. The scheduler defaults to async, so by default, the interval will be in milliseconds.

timeInterval<T>(scheduler: SchedulerLike = async): OperatorFunction<T, TimeInterval<T>>

Parameters

scheduler

Optional. Default is async.

Scheduler used to get the current time.

Returns

OperatorFunction<T, TimeInterval<T>>: Observable that emit infomation about value and interval

Description

Examples

Emit inteval between current value with the last value

const seconds = interval(1000); seconds.pipe(timeinterval()) .subscribe( value => console.log(value), err => console.log(err), ); seconds.pipe(timeout(900)) .subscribe( value => console.log(value), err => console.log(err), ); // NOTE: The values will never be this precise, // intervals created with `interval` or `setInterval` // are non-deterministic. // {value: 0, interval: 1000} // {value: 1, interval: 1000} // {value: 2, interval: 1000}