基本的防抖和节流
防抖:就是在某个时间段内,多次触发事件,只执行一次函数,如果在这个时间内再次触发,则时间重新计算
防抖应用场景:from 表单疯狂提交
节流:就是控制事件在每隔多长时间执行一次,如果在时间段内再次触发事件,函数也不会执行
应用场景:百度输入框实时搜索
实施代码:
fangdou() { if (this.flag) { console.log('防抖学习') this.flag = false clearTimeout(this.timer) this.timer = setTimeout(() => { this.flag = true }, 5000) } }, jieliu() { if (this.flag) {
this.flag = false clearTimeout(this.timer) this.timer = setTimeout(() => { console.log(this.val, '每隔两秒')
this.flag = true
}, 1000) } }
借用别人的图片: