防抖节流

Posted ```飞翔的翅膀```

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了防抖节流相关的知识,希望对你有一定的参考价值。

防抖

在固定时间内,如果有事件触发,则会再延长固定时间,如果在固定时间之内,一直没有触发事件,就会再次执行函数。

电梯,不是陌生的吧,按下电梯,电梯门打开,从电梯门打开到电梯门关上的事件是10s,如果在这10s之内没有人关上电梯,那么10s后就会自动关上电梯,这个过程就是在固定时间之内,一直没有触发事件,就会再次执行函数,继续想象,在电梯闭合的一瞬间,看见一个小姐姐跑过来赶电梯,这时候极具绅士风度的你按下了开电梯的按钮,电梯收到指令会再次打开电梯门,这时候就会再次打开电梯10s,这就解释了在固定时间内,如果有事件触发,则会再延长固定时间

节流

指定一个固定时间,无论时间触发与否,只要到了固定时间,都会触发

就比如说,我设置电脑熄屏时间是30min,只要到了30min就会自动熄屏,每30分钟熄屏一次

目的:降低高频时间触发,减少DOM操作或者请求次数,提高性能
比如说:onscroll,onresize,keydown,keyup,mousemove这些高频事件

那么如何解决我input一直输入一直请求后端的问题呢??
这就用到了防抖

解决

首先声明一下,我的这个项目是一个后端管理系统,所以我直接用了一个第三方库,lodash

说的不少了,看代码吧👀👀👀

1.下载lodash

cnpm i --save lodashc

2.引入

import _ from “lodash”;

以上是关于防抖节流的主要内容,如果未能解决你的问题,请参考以下文章

防抖和节流的实现

JS中节流和防抖函数的实现和区别

函数节流与函数防抖

JavaScript——防抖与节流

js函数的节流和防抖

js中的防抖节流点击事件回调