以前写代码没有考虑到性能的问题,在被测试疯狂的点击和轰炸下,页面出现了严重的数据问题
分析一:页面数据量比较大,当点击的时候还没有加载好,又发送了一次请求
分析二:按钮被疯狂事的点击
为了解决这个这个问题,想起来了函数节流的作用
函数节流就是针对调用频率高的函数,通过设置定时器,使其在执行后间隔一段时间,才进行下一次的执行,避免重复频繁的调用导致的浏览器性能以及ajax重复调用问题。
话不多说上代码:
var timer=null
if(this.timer){
clearTimeout(this.timer)
}
this.timer=setTimeout(()=>{
//这里面写上事件触发的逻辑
},20)