This is RxJS v 4. Find the latest version here
Projects each element of an observable sequence into a window that is completed when either it's full or a given amount of time has elapsed.
timeSpan
(Number
): Maximum time length of a window.count
(Number
): Maximum element count of a window.[scheduler=Rx.Scheduler.timeout]
(Scheduler
): Scheduler to run windows timers on. If not specified, the timeout scheduler is used.
(Observable
): An observable sequence of windows.
/* Hitting the count buffer first */
var source = Rx.Observable.interval(100)
.windowWithTimeOrCount(500, 3)
.take(3)
.selectMany(function (x) { return x.toArray(); });
var subscription = source.subscribe(
function (x) {
console.log('Next: ' + x.toString());
},
function (err) {
console.log('Error: ' + err);
},
function () {
console.log('Completed');
});
// => Next: 0,1,2
// => Next: 3,4,5
// => Next: 6,7,8
// => Completed
File:
Dist:
Prerequisites:
NPM Packages:
NuGet Packages:
Unit Tests: