rxjs处理和转换数字序列的问题

发布于 2022-09-06 23:13:28 字数 499 浏览 13 评论 0

现有代码如下:

 const source = Observable.range(1, 5);
 source.subscribe(console.log);

执行结果为:
1
2
3
4
5

问题:

  1. 有什么操作符或者方法能把source中的结果转换成一个数组,即订阅后能够输出:
    [1, 2, 3, 4, 5]
  2. range方法的第一个参数是起始值,第二个参数是从起始值开始往后几个值,也就是说他只能往后,如果我要往前呢?我只想到一种办法:

    const start = 2017;
    const source = range(start - 10, 10);
    source.subscribe(console.log);

    对于问题2还有更好的方法吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

银河中√捞星星 2022-09-13 23:13:28

第一个可以利用 bufferCount 操作符。

    const source = Observable.range(1, 5).bufferCount(5);
    source.subscribe(console.log);

第二个没啥不好的,就不考虑了。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文