Rxjs-transformation-operator-buffercount

提供:Dev Guides
移動先:案内検索

RxJS-変換演算子bufferCount

buffercount演算子の場合、それは呼び出されたオブザーバブルから値を収集し、buffercountに指定されたバッファーサイズが一致すると同じ値を出力します。 2つの引数 buffersize を取り、2番目の引数は startBufferEvery です。 指定されている場合はstartBufferEveryから、またはソースオブザーバブルの最初から新しい値をカウントします。

構文

bufferCount(bufferSize: number, startBufferEvery: number = null): Observable

パラメーター

*_bufferSize_* -送信されるバッファのサイズ。

戻り値

バッファリングされた値の配列を持つオブザーバブルが返されます。

bufferCount()の実際の例が表示されます

例1

import { fromEvent } from 'rxjs';
import { bufferCount } from 'rxjs/operators';

let btn = document.getElementById("btnclick");

let btn_clicks = fromEvent(btn, 'click');
let buffered_array = btn_clicks.pipe(bufferCount(4));
buffered_array.subscribe(arr => console.log(arr));

上記の例では、bufferSizeは4です。 したがって、4クリックのカウント後、クリックイベントの配列が配列に収集されて表示されます。 startBufferEveryを指定していないため、値は最初からカウントされます。

出力

bufferCount演算子

例2

import { fromEvent } from 'rxjs';
import { bufferCount } from 'rxjs/operators';

let btn = document.getElementById("btnclick");
let btn_clicks = fromEvent(btn, 'click');
let buffered_array = btn_clicks.pipe(bufferCount(4, 2));
buffered_array.subscribe(arr => console.log(arr));

この例では、startBufferEveryを追加したので、2クリックごとに、4クリックイベントのバッファカウントが表示されます。

出力

bufferCount Ex演算子