浅析JS防抖和节流

JS防抖和节流

  1. 防抖首先思考一个问题,防抖是如何产生的,抖动的现象又是什么,会造成什么样的影响,我们才能更好的理解防抖
    先聊一下抖动的现象吧,假如现在有一个按钮,用户点一次,浏览器向服务器发起一次请求,返回一个值,!但是,这个用户手抖,喜欢在按钮上一直点,那么就会造成,浏览器一直向服务器发送请求,影造成服务器阻塞。这样明显不好。
    所以就出现了防抖这个说法,就是为了控制用户点击时浏览器实际发送请求的次数。就是说,在1s内点击10次按钮,但这明显是用户手抖,才点了10次按钮,我们只需要发送1次请求就可以,因为这里的返回结果是一样的,假设设置时间间隔为1s,那么就是说在1s内发送10次请求,实际只发送1次请求,只有下一秒,再点击按钮,才会发送第二次请求,每次请求完毕之后都要清空定时器,才能执行下次用户点击事件。
    下面用代码解释:
<body>
  <div class="bg">
    <button class="btn">剁手按钮</button>
  </div>
</body>

首先在body里面定义了一个按钮,接着为按钮添加点击事件,这里用函数返回值,来替代请求服务器的返回结果,以下是JS代码:

<script>
  //首先为button添加点击事件
  const button = document.querySelector('button')
  //定义函数ask 
  function payMoney() {
   
    console.log('已剁'); console.log(this);
  }
 /*  //定义一个防抖函数debounce,这里传入两个参数,
      func为函数内部执行的函数,delay保存setTimeout的时间间隔*/
  function debounce(func
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值