性能优化之函数防抖动

函数防抖动是一种常见的优化高频率调用函数的手段,核心是把高频率调用的函数优化为在某一时间段内只调用一次

根据具体调用的时机可以分为两种,分别是先调用防抖以及后调用防抖

先调用防抖

先调用防抖是指先调用函数,然后等待一段时间,在等待时间结束后再进行下一次调用,如果在等待时间结束前发生了多次调用,则只会响应第一次。调用时间线如下所示
在这里插入图片描述
根据这个想法,可以大致得到如下代码
在这里插入图片描述

后调用防抖

后调用防抖则是先等待一段时间,在等待时间结束后调用函数,如果在等待时间结束前再次调用,则需重新计时并等待。调用时间线如下所示
在这里插入图片描述
在原有代码基础上进行修改,增加后调用的防抖动方法
在这里插入图片描述
将防抖动的代码合并一下,得到完整的防抖动代码
在这里插入图片描述

应用场景

keyupkeydown等频繁触发的事件监听

表单验证、输入搜索、点击搜索

其他会频繁调用的函数等

总结

函数防抖动本质上是检测前后两次连续间隔内的函数调用,把时间间隔内的多次函数调用合并成一次,从而实现对频繁调用的函数的优化

先调用防抖是立即执行时间间隔内的第一次函数调用,应用场景相对较少

后调用防抖是执行时间间隔内的最后一次函数调用,应用场景相对较多

在这里插入图片描述文章来自公众号:睿江云计算
睿江云计算官网:http://www.eflycloud.com/home?from=RJ_0024

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值