首页 > 其他分享 >30 天精通 RxJS (14):Observable Operator - throttle, debounce

30 天精通 RxJS (14):Observable Operator - throttle, debounce

时间:2024-04-11 22:25:44浏览次数:25  
标签:Observable 30 throttle 14 debounce 元素 console log

RxJS Logo

昨天讲到了在 UI 操作上很常用的 delay,今天我们接着要来讲另外两个也非常实用 operators,尤其在做性能优化时更是不可或缺的好工具!

Operators

debounce

跟 buffer、bufferTime 一样,Rx 有 debounce 跟 debounceTime 一个是传入 observable 另一个则是传入毫秒,比较常用到的是 debounceTime,这里我们直接来看一个示例

var source = Rx.Observable.interval(300).take(5)
var example = source.debounceTime(1000)

example.subscribe({
	next: (value) => {
		console.log(value)
	},
	error: (err) => {
		console.log('Error: ' + err)
	},
	complete: () => {
		console.log('complete')
	},
})
// 4
// complete

这里只印出 4 然后就结束了,因为 debounce 运行的方式是每次收到元素,他会先把元素 cache 住并等待一段时间,如果这段时间内已经没有收到任何元素,则把元素送出;如果这段时间内又收到新的元素,则会把原本 cache 住的元素释放掉并重新计时,不断反复。

本系列仅作为学习记录所用,摘录自30 天精通 Rxjs!强烈推荐!膜拜大佬!

标签:Observable,30,throttle,14,debounce,元素,console,log
From: https://www.cnblogs.com/xiaojiuwow/p/18130131

相关文章

  • 题解 P10314【[SHUPC 2024] 函数】
    注意到:\[f(x)=\lfloorx\rfloor,\qquad(x\notin\N)\]代码:intT;doublex;cout<<fixed<<setprecision(12);for(cin>>T;T;--T){cin>>x;cout<<floor(x)<<endl;}感觉说明不够过不了审,于是简单说一下正确性:由诱导公式\(\c......
  • [题解] [洛谷P1404] 平均数
    洛谷P1404平均数题目描述给一个长度为\(n\)的数列,我们需要找出该数列的一个子串,使得子串平均数最大化,并且子串长度\(\geqm\)。输入格式第一行两个整数\(n\)和\(m\)。接下来\(n\)行,每行一个整数\(a_i\),表示序列第\(i\)个数字。输出格式一个整数,表示最大平均数......
  • LCD液晶超抗干扰段码显示屏驱动芯片VK1C21A/B/C/D/DA/E/EA具备显示效果好,静电耐压高等
    概述:VK1C21A/B是一个点阵式存储映射的LCD驱动器,可支持最大128点(32SEGx4COM)的LCD屏,也支持2COM和3COM的LCD屏。单片机可通过3/4个通信脚配置显示参数和发送显示数据,也可通过指令进入省电模式。具备高抗干扰,显示效果好,静电耐压高等优良特性,可替代市面上大部分LCD驱动芯片。 特点:......
  • 14--爬虫回顾和重点经验
    01.浏览器#一个网页的加载全过程1.服务器端渲染html的内容和数据在服务器进行融合.在浏览器端看到的页面源代码中.有你需要的数据2.客户端(浏览器)渲染html的内容和数据进行融合是发生在你的浏览器上的.这个过程一般通过脚本来完成(javascript)我们......
  • 太阳(蓝桥杯14届)
    https://www.lanqiao.cn/problems/3529/learning/?subject_code=2&group_code=5&match_num=14&match_flow=1&origin=cup1importjava.util.*;2//1:无需package3//2:类名必须Main,不可修改4importjava.util.Map.Entry;56publicclassDemo1{7......
  • 信息学奥赛一本通:1404:我家的门牌号
    题目描述】我家住在一条短胡同里,这条胡同的门牌号从1开始顺序编号。若其余各家的门牌号之和减去我家门牌号的两倍,恰好等于n,求我家的门牌号及总共有多少家。数据保证有唯一解。【输入】一个正整数n。n<100000。【输出】一行,包含两个正整数,分别是我家的门牌号及总共......
  • 信息学奥赛一本通:1403:素数对
    【题目描述】两个相差为2的素数称为素数对,如5和7,17和19等,本题目要求找出所有两个数均不大于n的素数对。【输入】一个正整数n(1≤n≤10000)。【输出】所有小于等于n的素数对。每对素数对输出一行,中间用单个空格隔开。若没有找到任何素数对,输出empty。【输入样例】......
  • SIPA INAF U8145 危地马拉的贫困和不平等关系分析
    问题集3:SIPAINAFU8145危地马拉的贫困和不平等关系分析定于4月5日星期五晚上11:59,上传到Courseworks上的一个pdf文件中在本练习中,您将对危地马拉的贫困和不平等现象进行评估。数据来自《生活条件百科全书》(ENCOVI)2000年,由国家统计研究所(INE)收集危地马拉国家统计研究所,在世界银行......
  • 【NC214362】第 k 小
    题目第k小堆(优先队列)思路这道题是求一个数据流中的第kkk小数,我们可以维护一个大根堆,堆的容量为k......
  • 前端学习-vue视频学习014-组件通信
    尚硅谷视频教程通信方式1propsparent传child--只能传递非函数//Parent.vue<template><divclass="parent"><h3>parent</h3> <h3>car:{{car}}</h3> <Child:car="car"/></div></templat......