// RxJS v6+import { interval } from'rxjs';import { bufferCount } from'rxjs/operators';//Create an observable that emits a value every secondconstsource=interval(1000);//After three values are emitted, pass on as an array of buffered valuesconstbufferThree=source.pipe(bufferCount(3));//Print values to console//ex. output [0,1,2]...[3,4,5]constsubscribe=bufferThree.subscribe(val =>console.log('Buffered Values:', val));
// RxJS v6+import { interval } from'rxjs';import { bufferCount } from'rxjs/operators';//Create an observable that emits a value every secondconstsource=interval(1000);/*bufferCount also takes second argument, when to start the next bufferfor instance, if we have a bufferCount of 3 but second argument (startBufferEvery) of 1:1st interval value:buffer 1: [0]2nd interval value:buffer 1: [0,1]buffer 2: [1]3rd interval value:buffer 1: [0,1,2] Buffer of 3, emit bufferbuffer 2: [1,2]buffer 3: [2]4th interval value:buffer 2: [1,2,3] Buffer of 3, emit bufferbuffer 3: [2, 3]buffer 4: [3]*/constbufferEveryOne=source.pipe(bufferCount(3,1));//Print values to consoleconstsubscribe=bufferEveryOne.subscribe(val =>console.log('Start Buffer Every 1:', val));