节流:一段时间内,只执行一次某个操作;过了这段时间,还有操作的话,继续执行新的操作。
一般用于超高触发频率事件,例如鼠标移动事件、滚动条事件
防抖:用户输入完毕才执行
data: {
timeout: null,
timeout2: null,
},
methods:{
change() {
if(this.timeout){
clearTimeout(this.timeout)
}
this.timeout = setTimeout(() => {
console.log('防抖事件')
}, 500);
},
change2(){
if(!this.timeout2){
this.timeout2 = setTimeout(() => {
console.log('节流事件');
this.timeout2 = null;
}, 1000);
}
}
}