16、掌握异步流与高阶操作符在实际场景中的应用

掌握异步流与高阶操作符在实际场景中的应用

1. 异步流与Monad概念基础

理解可观察对象传播其他可观察对象的概念可能需要一些时间,但随着深入学习,它会变得自然易懂。这种软件模式是函数式编程(FP)范式的核心,涉及一种名为monad的数据类型。简单来说,monad暴露一个接口,有三个简单要求,可观察对象能满足这些要求:
- 一个将值提升到monadic上下文的单元函数(如 of() from() 等)。
- 一个映射函数( map() )。
- 一个映射并扁平化的函数( flatMap() mergeMap() )。

在实际应用中,嵌套流经常出现,因此对于大多数组合操作符,都有一组联合操作符,这样在进行切换、合并和连接操作时,就无需每次都使用两个操作符。接下来将使用 mergeMap() 解决更复杂的问题。

2. 股票数据实时获取示例

以股票行情小部件为例,之前使用简单的随机数生成器来模拟公司ABC的股票价格波动。现在将集成真实的股票服务,如雅虎财经,以获取特定股票代码的实时数据。具体步骤如下:
1. 创建请求股票数据的可观察对象

const csv = str => str.split(/,\s*/);
const webservice = 'http://download.finance.ya
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值