前端中的防抖和节流

一、背景

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:申请域名、网络空间、营销软件、网站建设、郓城网站维护、网站推广。

在日常使用中,用户在进行搜索时,没输入一个字就会触发接口请求,这样就会造成网络请求繁忙;用户在下拉滚动调的时候,由于速度过快也会造成频繁触发接口调用。

二、防抖

防抖,顾名思义,防止抖动。用于将用户的操作行为触发转换为程序行为触发,防止用户操作的结果抖动。一段时间内,事件在我们规定的间隔 n 秒内多次执行,回调只会执行一次。

 1 /**
 2  * 防抖
 3  * @param {function} fn 
 4  * @param {number} delay 
 5  */
 6 function debounce(fn, delay = 500){
 7     let timer = null
 8     return function(){
 9         if(timer) {
10             clearTimeout(timer)
11         }
12         timer = setTimeout(()=>{
13             fn.apply(this, arguments)
14             clearTimeout(timer)
15         },delay)
16     }
17 }

网站名称:前端中的防抖和节流
URL分享:http://pwwzsj.com/article/dsojpji.html