我的编程空间,编程开发者的网络收藏夹
学习永远不晚

JavaScript中的observables 操作符创建实例

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

JavaScript中的observables 操作符创建实例

操作符是 observables 背后的马力,为复杂的异步任务提供了一种优雅的声明式解决方案。

本篇就带领大家 “粗略” 过一下 observable 创建实例的重点 API 都有哪些?以及用代码片段展示出用法示意~

一、创建实例

1.​​create​​

​​create​​ 肯定不陌生吧?使用给定的订阅函数来创建 observable ;

// RxJS v6+
import { Observable } from 'rxjs';

const hello = Observable.create(function(observer) {
  observer.next('Hello');
  observer.next('World');
});

// 输出: 'Hello'...'World'
const subscribe = hello.subscribe(val => console.log(val));

2.​​empty​​

​​empty​​ 会给我们一个空的 observable,如果我们订阅这个 observable ,它会立即发送 complete 的讯息;

var source = Rx.Observable.empty();

source.subscribe({
    next: function(value) {
        console.log(value)
    },
    complete: function() {
        console.log('complete!');
    },
    error: function(error) {
        console.log(error)
    }
});
// complete!

3.​​from​​ 

用 ​​from​​ 来接收任何可列举的参数(JS 数组);

// RxJS v6+
import { from } from 'rxjs';

// 将数组作为值的序列发出
const arraySource = from([1, 2, 3, 4, 5]);
// 输出: 1,2,3,4,5
const subscribe = arraySource.subscribe(val => console.log(val));

4.​​of​​

与 ​​from​​ 相似的 ​​of​​,也是用于操作一个 list,按顺序发出任意数量的值;

// RxJS v6+
import { of } from 'rxjs';

// 依次发出提供的任意数量的值
const source = of(1, 2, 3, 4, 5);
// 输出: 1,2,3,4,5
const subscribe = source.subscribe(val => console.log(val));

5.​​fromEvent​​

​​fromEvent​​ 将事件转换成 observable 序列;

// RxJS v6+
import { fromEvent } from 'rxjs';
import { map } from 'rxjs/operators';

// 创建发出点击事件的 observable
const source = fromEvent(document, 'click');
// 映射成给定的事件时间戳
const example = source.pipe(map(event => `Event time: ${event.timeStamp}`));
// 输出 (示例中的数字以运行时为准): 'Event time: 7276.390000000001'
const subscribe = example.subscribe(val => console.log(val));

6.​​fromPromise​​

​​fromPromise​​ 创建由 promise 转换而来的 observable,并发出 promise 的结果;

var source = Rx.Observable
  .fromPromise((resolve, reject) => {
    setTimeout(() => {
      resolve('Hello RxJS!');
    },3000)
  })

// 等同于
var source = Rx.Observable
  .from(new Promise((resolve, reject) => {
    setTimeout(() => {
      resolve('Hello RxJS!');
    },3000)
  }))

7.​​interval​​

显然,​​interval​​ 操作和时间有关,它基于给定时间间隔发出数字序列;

// RxJS v6+
import { interval } from 'rxjs';

// 每1秒发出数字序列中的值
const source = interval(1000);
// 数字: 0,1,2,3,4,5....
const subscribe = source.subscribe(val => console.log(val));

// import { interval } from 'rxjs';
// const source = interval(1000);
// 等同于
// var source = Rx.Observable.interval(1000);

8.​​timer​​

​​timer​​ 是 ​​interval​​ 的升级,用于给定持续时间后,再按照指定间隔时间依次发出数字。

// RxJS v6+
import { timer } from 'rxjs';


const source = timer(1000, 2000);
// 输出: 0,1,2,3,4,5......
const subscribe = source.subscribe(val => console.log(val));

到此这篇关于JavaScript中的observables 操作符创建实例的文章就介绍到这了,更多相关observables 操作符创建实例内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

JavaScript中的observables 操作符创建实例

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

java中实现创建目录与创建文件的操作实例

用Java创建文件或目录非常简单,下面这篇文章主要给大家介绍了关于java中实现创建目录与创建文件的操作实例,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
2023-01-18

JavaScript中的操作符与表达式实例代码分析

这篇文章主要介绍“JavaScript中的操作符与表达式实例代码分析”,在日常操作中,相信很多人在JavaScript中的操作符与表达式实例代码分析问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JavaScr
2023-07-04

JavaScript中怎么实现字符串操作

JavaScript中怎么实现字符串操作,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1. 拆分字符串JavaScript中的 split() 方法使用指定的分隔符字符串将一个
2023-06-20

JavaScript中new操作符的作用是什么

这篇文章给大家介绍JavaScript中new操作符的作用是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。JavaScript的特点1.JavaScript主要用来向HTML页面添加交互行为。2.JavaScrip
2023-06-06

Javascript中的堆、栈操作示例

这篇文章将为大家详细讲解有关Javascript中的堆、栈操作示例,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。堆、栈都是一种数据项按序排列的数据结构,它涉及到数据在内存中的存储方式,Javascript
2023-06-14

JavaScript中new操作符的原理与实现详解

你知道new吗?你知道new的实现原理吗?你能手写new方法吗?不要担心,这篇文件就来带大家深入了解一下JavaScript中的new操作符,感兴趣的小伙伴可以学习一下
2022-11-13

JavaScript二叉搜索树构建操作实例分析

本篇内容介绍了“JavaScript二叉搜索树构建操作实例分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!什么是二叉搜索树二叉搜索树首先它
2023-07-02

JavaScript中的new操作符的具体使用

本文主要介绍了JavaScript中的new操作符的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2023-05-18

Python的字符串操作简单实例

这篇文章主要介绍了Python的字符串操作简单实例,字符串有许多种操作方式,本文带来几个操作实例,快来一起看看吧
2023-05-15

编程热搜

目录