count
统计一共发射了多少数据
import { takeUntil, count } from "rxjs/operators";
import { interval, fromEvent } from "rxjs";
max
统一最大的值,或者传一个比较函数取出逻辑上最大的值
import { max } from "rxjs/operators";
import { of } from "rxjs";
//利用max求出最大的值
of(1, 2, 3, 4)
.pipe(max())
.subscribe(x => console.log(x));
//利用max和比较函数求出最小的值
of(1, 2, 3, 4)
.pipe(max((x, y) => Math.min(x, y)))
.subscribe(x => console.log(x));
min
统计最小的值,或者传一个比较函数取出逻辑上最小的值
reduce
累加操作符,通过当前值和累加值的运算求出最终的值,例如求和运算,每一次计算都是将当前值和之前的和相加,最后一次计算的结果就是最终的结果。
注意累加运算需要一个初始值作为第一次运算时的“上一次结果”,不然第一个值不知道和谁去计算
import { take, reduce, tap } from "rxjs/operators";
import { interval } from "rxjs";
interval(100)
.pipe(
tap(_ => console.log(_)),
take(20),
reduce((x, y) => x + y, 0)
)
.subscribe(x => console.log(x));
网友评论