Rxjs 里 subscribeToArray 工具函数的详细分析

简介: Rxjs 里 subscribeToArray 工具函数的详细分析

image.png

该函数接收一个 array 作为输入参数,遍历这个 array,将其每个元素,作为另一个匿名函数执行的一部分。该匿名函数体内,将 array 的元素作为 subscriber 订阅函数的输入:

image.png

<html>
<script>
const subscribeToArray = (array) => (subscriber) => {
    for (let i = 0, len = array.length; i < len && !subscriber.closed; i++) {
        subscriber.next(array[i]);
    }
    subscriber.complete();
};
const aInput = [1,2,3,4];
const newFunction = subscribeToArray(aInput);
debugger;
</script>
</html>

image.png

<html>
<script>
const subscribeToArray = (array) => (subscriber) => {
    for (let i = 0, len = array.length; i < len && !subscriber.closed; i++) {
        subscriber.next(array[i]);
    }
    subscriber.complete();
};
const aInput = [1,2,3,4];
const newFunction = subscribeToArray(aInput);
const subscriber = {
  closed: false
};
subscriber.next = (data) => console.log("next: " + data);
subscriber.complete = () => console.log("completed!");
debugger;
newFunction(subscriber);
</script>
</html>

image.png

直到应用程序代码调用 Observable 的 subscribe 方法时,才会变量 input 数组,用 subscribe 的 next 方法依次处理 input 数组的元素。在 CombineLatest Operator 的例子里,input 元素就是 Observable 对象的组合。

相关文章
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp的航帆学院网站的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的航帆学院网站的详细设计和实现(源码+lw+部署文档+讲解等)
|
SQL 缓存 数据库
使用BenmarkSQL运行TPC-C及查看oceanbase执行计划查看
进行oceanbase数据库TPC-C测试,查看oceanbase的执行计划
410 0
使用BenmarkSQL运行TPC-C及查看oceanbase执行计划查看
|
Java
2018-05-18 第十二天
一、Eclipse日食 是IBM使用纯java开发的一个主要用于java应用程序开发的一个集成开发环境IDE。可以帮助我们快速的开发java 项目。 bug虫子。在软件行业中的bug 就是程序中的错误。
1247 0
|
云安全 安全 网络安全
【成都云栖大会】阿里云发布技术公益计划:为100家创业公司提供免费安全防护
5月23日,在云栖大会 · 成都峰会上,阿里云正式推出产业安全扶助计划。 这是一个面向初创企业的公益项目,计划为每家入选企业免费提供含主机安全、网络安全和抗DDoS在内的全套云安全防护,协助其抵御网络黑灰产业,让企业专注业务的高速发展,无需再因安全问题“拖后腿”。
1808 0
|
7天前
|
人工智能 运维 安全
|
5天前
|
人工智能 异构计算
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!
|
6天前
|
机器学习/深度学习 人工智能 自然语言处理
B站开源IndexTTS2,用极致表现力颠覆听觉体验
在语音合成技术不断演进的背景下,早期版本的IndexTTS虽然在多场景应用中展现出良好的表现,但在情感表达的细腻度与时长控制的精准性方面仍存在提升空间。为了解决这些问题,并进一步推动零样本语音合成在实际场景中的落地能力,B站语音团队对模型架构与训练策略进行了深度优化,推出了全新一代语音合成模型——IndexTTS2 。
604 21
|
12天前
|
人工智能 JavaScript 测试技术
Qwen3-Coder入门教程|10分钟搞定安装配置
Qwen3-Coder 挑战赛简介:无论你是编程小白还是办公达人,都能通过本教程快速上手 Qwen-Code CLI,利用 AI 轻松实现代码编写、文档处理等任务。内容涵盖 API 配置、CLI 安装及多种实用案例,助你提升效率,体验智能编码的乐趣。
969 110