手写防抖

简介: 手写防抖

前言

我是歌谣 我有个兄弟 巅峰的时候排名c站总榜19 叫前端小歌谣 曾经我花了三年的时间创作了他 现在我要用五年的时间超越他 今天又是接近兄弟的一天人生难免坎坷 大不了从头再来 歌谣的意志是永恒的 放弃很容易 但是坚持一定很酷


导语

手写防抖




编辑


代码部分

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)
    }
    }



总结

简单的说,当一个函数连续触发,只执行最后一次。



相关文章
|
6月前
15 # 手写 throttle 节流方法
15 # 手写 throttle 节流方法
44 0
|
3月前
|
前端开发 UED
面试时让你手写一个防抖和节流优化,你能写出来吗?(一)
面试时让你手写一个防抖和节流优化,你能写出来吗?(一)
|
3月前
|
存储 前端开发 JavaScript
面试时让你手写一个防抖和节流优化,你能写出来吗?(二)
面试时让你手写一个防抖和节流优化,你能写出来吗?(二)
|
4月前
|
缓存 开发框架 前端开发
前端性能优化【前端必备】(含懒加载,手写防抖、节流等)
前端性能优化【前端必备】(含懒加载,手写防抖、节流等)
70 4
|
6月前
|
前端开发 JavaScript 程序员
【面试题】 js-面试官要求手写节流防抖?
【面试题】 js-面试官要求手写节流防抖?
|
6月前
14 # 手写 debounce 防抖方法
14 # 手写 debounce 防抖方法
46 1
|
6月前
|
前端开发 JavaScript UED
手写一个防抖
手写一个防抖
40 0
|
12月前
|
JavaScript 前端开发 Java
手写JavaScript防抖节流和休眠函数
防抖原理是在一定时间内,只有最后一次操作,再过延迟的时间后执行,一般用于防止用户多次重复点击按钮,只会触发最后一次
51 0
|
前端开发
手写防抖节流
手写防抖节流
手写防抖节流
|
监控 前端开发
前端经典面试题 | 理解 节流 和 防抖(后附手写节流\防抖)
前端经典面试题 | 理解 节流 和 防抖(后附手写节流\防抖)