手写防抖

简介: 手写防抖

前言

我是歌谣 我有个兄弟 巅峰的时候排名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)
    }
    }



总结

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



相关文章
|
2月前
15 # 手写 throttle 节流方法
15 # 手写 throttle 节流方法
26 0
|
2天前
|
缓存 开发框架 前端开发
前端性能优化【前端必备】(含懒加载,手写防抖、节流等)
前端性能优化【前端必备】(含懒加载,手写防抖、节流等)
12 4
|
2月前
|
前端开发 JavaScript 程序员
【面试题】 js-面试官要求手写节流防抖?
【面试题】 js-面试官要求手写节流防抖?
|
2月前
14 # 手写 debounce 防抖方法
14 # 手写 debounce 防抖方法
29 1
|
2月前
|
前端开发 JavaScript UED
手写一个防抖
手写一个防抖
29 0
|
8月前
|
JavaScript 前端开发 Java
手写JavaScript防抖节流和休眠函数
防抖原理是在一定时间内,只有最后一次操作,再过延迟的时间后执行,一般用于防止用户多次重复点击按钮,只会触发最后一次
36 0
|
10月前
|
前端开发
手写防抖节流
手写防抖节流
手写防抖节流
|
10月前
|
监控 前端开发
前端经典面试题 | 理解 节流 和 防抖(后附手写节流\防抖)
前端经典面试题 | 理解 节流 和 防抖(后附手写节流\防抖)
|
11月前
|
前端开发
手写节流
手写节流
51 1
|
前端开发 测试技术
前端面试100道手写题(2)—— throttle与debounce
前端面试100道手写题第二篇《throttle与debounce》,说一下为什么选这两个,其实大家都有在用
88 0