防抖
设置了延时器,短时间高频率触发只有最后一次成功
var btn = document.getElementById('btn')
var timer = null
btn.onclick = function () {
clearTimeout(timer)
timer = setTimeout(function () {
console.log('点击')
}, 1000)
}
节流
设置状态锁,短时间高频率触发只有第一次成功
var btn = document.getElementById('btn')
var key = false;
btn.onclick = function () {
if (!key) {
console.log('点击');
key = true
setTimeout(function () {
key = false;
}, 1000)
}
}