新手学 rxjs,是否可以把流理解为管道, map 理解为选择脏水,还是干净水, filter 理解为过滤网?

2017-04-08 00:03:01 +08:00
 qweweretrt515

最近看了好多 rxjs 的文章

总是觉得不好理解

我目前把 rxjs 中的流理解为一个水管, 数据,就是水,往下流动

如 .map(e => e.target.value) 允许 e.target.value (该类型的水)通过

如 .filter(value => value >= 1), 就是对流动的水,进行过滤,如果 满足条件,就允许通过,否则就丢弃

请问这样理解对吗?

我感觉我基础太差, 学 rxjs 有些难以理解,我的 js 基础是大概 5 年前学的,那时候还没有 es5 出来,我也没有系统学过 es5 , 请问各位前辈,我该补充什么知识呢

谢谢

1004 次点击
所在节点    问与答
2 条回复
oott123
2017-04-08 10:08:09 +08:00
如果按你这么理解,那 map 和 filter 岂不是功能一样…
filter 理解问题不大。 map 并不改变元素的数量,而是改变元素的值。在你的例子里,它相当于一个“转换器”,把一个里面全是 event 的数组转换为一个全是 value 的数组。
qweweretrt515
2017-04-08 11:48:46 +08:00
@oott123 多谢指点

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/353356

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX