`window` 在 RxJS 中是什么意思?
What does the `window` mean in RxJS?
我听说过 buffer
。似乎 window
类似于缓冲区。
它们之间有什么区别?以及为什么它被称为 'window'??
Buffer 是 Window 的特化。
Window 会立即通知您新的 windows,以及用于观察 window.
中的值的可观察对象
相比之下,Buffer 不会立即通知您新的 windows。相反,它在内部收集 window 中的项目。当 window 完成时,Buffer 将发送一个通知,其中包含一个包含 window.
中所有项目的数组
从概念上讲,您可以使用 window
编写 buffer
,如下所示:
Rx.Observable.prototype.buffer = function () {
return this.window
.apply(this, arguments)
.flatMap(function (w) { return w.toArray(); });
};
至于为什么叫它"window"...除非 Rx 作者来回答,否则任何答案都将纯粹是推测性的。 Window 是许多学科中常用来表示时间间隔的术语,包括软件开发和信号处理。
我听说过 buffer
。似乎 window
类似于缓冲区。
它们之间有什么区别?以及为什么它被称为 'window'??
Buffer 是 Window 的特化。
Window 会立即通知您新的 windows,以及用于观察 window.
中的值的可观察对象相比之下,Buffer 不会立即通知您新的 windows。相反,它在内部收集 window 中的项目。当 window 完成时,Buffer 将发送一个通知,其中包含一个包含 window.
中所有项目的数组从概念上讲,您可以使用 window
编写 buffer
,如下所示:
Rx.Observable.prototype.buffer = function () {
return this.window
.apply(this, arguments)
.flatMap(function (w) { return w.toArray(); });
};
至于为什么叫它"window"...除非 Rx 作者来回答,否则任何答案都将纯粹是推测性的。 Window 是许多学科中常用来表示时间间隔的术语,包括软件开发和信号处理。