以设定的时间间隔轮询 Angular Observable<number>

Poll Angular Observable<number> at set intervals

我有一个 observable,我知道它的更新速率约为每秒 100 个值。我想要的只是以该更新率的一小部分轮询其当前值,比如每秒 5 次,以便我可以显示它。

highFrequencyData$: Observable<number> = this.myHighFrequencyDataService.highFrequencyData$;

// This update rate is way too high and not what I want:
highFrequencyData$.subscribe( (value: number) => this.displayValue(value) ); 

我对 Angular 比较陌生,我觉得有一种优雅的方法可以使用管道和计时器来执行以下操作,但我想不出正确的语法。我的目标是将其转换为我可以进一步使用的低频 Observable,例如:

lowFrequencyData$ : Observable<number>  = highFrequencyData$.pipe( /* Magic happens to pick value at frequency of 5Hz */);

正确的表达方式是什么?

你的代码很简单,学习一下RxJS以后用起来很方便...:[=​​11=]

const refreshRate = 200; // refresh rate in ms

lowFrequencyData$: Observable<number> = highFrequencyData$.pipe(debounceTime(refreshRate));