位置: IT常识 - 正文

防抖和节流有什么区别?(节流和防抖js)

编辑:rootadmin
防抖和节流有什么区别?

推荐整理分享防抖和节流有什么区别?(节流和防抖js),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:防抖和节流的使用场景,举例说明,防抖和节流的原理,防抖和节流的,防抖和节流的使用场景,举例说明,节流和防抖js,节流和防抖js,防抖和节流的使用场景,举例说明,防抖和节流有什么区别,内容如对您有帮助,希望把文章链接给更多的朋友!

一、理解防抖和节流

防抖:在单位时间内频繁触发事件,只有最后一次生效

比如:在游戏回城的时候被打断,再次点回城就会重新计时,最终只有没被打断的最后一次,才能成功回城,就是防抖

节流:在单位时间内频繁触发事件,只生效一次(也就是只有第一次生效)

比如:鼠标点击下一张轮播图,不管单位时间内连续点击了多少次,轮播图都是2秒换下一张,就是节流

防抖和节流都是性能优化的一种手段

二、相同点

1.都可以通过使用 setTimeout 来实现

2.都可以降低回调执行频率,节省计算资源

三、不同点

1.定义不同

函数防抖:一段时间内连续触发事件,只执行最后一次

函数节流:一段事件内只执行一次

2.应用场景不同

防抖:(1)手机号、邮箱地址的校验 (2)当用户input框输入完成后再发请求,如搜索等

节流: 高频事件,如:多少秒之后获取验证码、resize 事件和scroll 事件等

四、代码实现

1.防抖:

<body>

  <input type="text" id="i">

  <script>

    // 1.防抖

    document.querySelector('#i').addEventListener('input', () => {

      debounce()

    })

    let timeId = null

    const debounce = () => {

      clearTimeout(timeId)

      timeId = setTimeout(() => {

        console.log("防抖最后一次输出");

防抖和节流有什么区别?(节流和防抖js)

      }, 1000)

    }

  </script>

</body>

 防抖实现效果:

2.节流:

<body>

   <input type="button" id="btn" value="获取验证码">

  <script>

// 2.节流

    let flag = true // 设置控制开关

    let timeId = null

    const inp = document.querySelector('#btn')

    inp.addEventListener("click", () => {

      if (!flag) {

        return

      }

      flag = false

      let s = 5

      timeId = setInterval(() => {

        s -= 1

        if (s < 1) {

          inp.value = '获取验证码'

          flag = true

          s = 5

          clearInterval(timeId)

        } else {

          inp.value = s + '秒后再次获取验证码'

        }

      }, 1000)

    })

  </script>

</body>

本文链接地址:https://www.jiuchutong.com/zhishi/299973.html 转载请保留说明!

上一篇:气温和降水空间栅格数据下载RS123(气温和降水空间变化一月平均气温规律是什么原因是什么)

下一篇:5个前端练手项目(html css js canvas)(哪里能找到前端练手项目教程)

  • 计提应交个人所得税分录怎么做
  • 预付加油充值卡可以报销吗
  • 初级职称经济法基础重点
  • 如何区分追索权和付款请求权的区别
  • 高铁票丢失了可以二次打印吗
  • 抵扣旅客运输增值税报表怎么填
  • 其他应收款报表数据怎么取
  • 工商年报的应交税费包含哪些
  • 个人独资企业处罚听证的标准
  • 存在弃置费用的固定资产有哪些
  • 月末本年利润余额怎么算
  • 已认证发票红冲进项税分录
  • 库存商品对外销售会计分录
  • 三证合一办理流程及费用
  • 房地产结转收入是什么意思
  • 企业用于在建工程购入的材料
  • 屋面维修按定额预算明细表
  • 库存商品报废进项转出
  • 印花税一定要贴花吗
  • 技术开发费加计扣除优惠政策
  • 发票不一致是什么原因
  • 公司三季度亏损20个亿这股票值得买吗
  • 什么情况下税务会查账
  • 质量成本包括哪两个成本
  • 库存现金清查短款会计分录
  • 事业单位打印费计入什么科目
  • 应付工资和实付工资的差额叫什么
  • 虚拟机中如何将文件移动到普通用户的家目录下
  • 股东投资追加款怎么做账
  • win7系统中文乱码怎么解决
  • win11怎么录屏游戏
  • 供热企业收取采暖费标准
  • sec是什么文件
  • php中cookie的值存储在哪
  • php数组的类型有哪些
  • 企业销售商品怎么做分录
  • vue相关
  • 大西洋跟太平洋有没有融为一体?
  • 销售购置的房产税怎么算
  • 应收账款和应付账款怎么对冲
  • 注销报税是什么意思
  • 心形岛屿叫什么名字
  • 微信小程序开发零基础入门
  • thinkphp模糊查询
  • linux用mv文件移动指定文件
  • 关于高德地图的分析报告
  • 补充医疗保险会查hiv吗
  • 企业对外付汇怎么交税
  • 出售其他债权投资产生的收益为什么计入留存收益
  • 购买的矿泉水能卖吗
  • 生活服务的行业
  • mysql主从配置详解
  • 委托加工的材料成本是否含增值税
  • 高新技术企业如何计算企业所得税
  • 免缴土地使用税是不是不用交税
  • 公司发放工作服怎么做账务处理
  • 待摊费用要怎么做账
  • 工程施工怎么做账
  • 应付账款的发生额怎么算
  • 全额工资和实发工资
  • 从增值税抵扣进项怎么算
  • 软件折旧从什么时候算
  • 材料会计实务操作题答案
  • access数据类型是什么
  • windows xp打开服务
  • Windows Server 2008添加Hyper-V组件
  • 如何恢复ubuntu
  • 3.0vray安装教程
  • cocos2dx-js
  • Unity AssetBundle爬坑手记
  • nodejs的socket
  • perl数组去重
  • js parsejson
  • node.js 流
  • python控制台怎么用
  • 残疾人个人所得税减免政策
  • 河南电子税务局残保金怎么申报
  • 增值税有哪些税种组成
  • 济南税务局投诉电话多少
  • 深圳国税咨询电话是多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设