RxJS – Creation Operator Count
count() 接收带有值的 Observable,将其转换为将提供一个单一值的 Observable。count 函数接收谓词函数作为可选参数。该函数的类型为布尔值,仅当值是真值时才将值添加到输出。
语法
以下是 Count 语法 −
count(predicate_func? : boolean): Observable
参数
predicate_func - (可选) 将筛选源 observable 中待计数的值并返回布尔值的函数。
返回值
返回值是一个包含给定数字计数的 observable。
让我们看看一些没有谓词和带有函数的 count 的示例。
示例 1
以下示例不使用谓词函数 −
import { of } from 'rxjs'; import { count } from 'rxjs/operators'; let all_nums = of(1, 7, 5, 10, 10, 20); let final_val = all_nums.pipe(count()); final_val.subscribe(x => console.log("The count is "+x));
输出
The count is 6
示例 2
以下示例使用谓词函数 −
import { of } from 'rxjs'; import { count } from 'rxjs/operators'; let all_nums = of(1, 6, 5, 10, 9, 20, 40); let final_val = all_nums.pipe(count(a => a % 2 === 0)); final_val.subscribe(x => console.log("The count is "+x));
我们再 count 中使用的函数仅提供偶数的计数。
输出
The count is 4
广告