目录
前言
导语
代码部分
总结
前言
我是歌谣 歌谣的意志是永恒的 放弃很容易 但是坚持一定很酷
导语
手写防抖
编辑
代码部分
function geyao(fn, delay) { //timer是一个定时器 let timer = null // 返回一个闭包函数,用闭包保存timer确保其不会销毁, 重复点击会清理上一次的定时器 let arg = arguments return function () { // 调用一次就清除上一次的定时器 clearTimeout(timer) // 开启这一次的定时器 timer = setTimeout(() => { // 若不改变this指向,则会指向fn定义环境 fn.apply(this, arg) }, delay) } }
总结
简单的说,当一个函数连续触发,只执行最后一次。