js防抖函数
1、使用场景:
例如:搜索框搜索输入。只需用户最后一次输入完,再发送请求
2、函数防抖的要点:
需要一个 setTimeout 来辅助实现,延迟运行需要执行的代码。如果该方法多次触发,则把上次记录的延迟执行代码用 clearTimeout 清掉,重新开始计时。若计时期间事件没有被重新触发,等延迟时间计时完毕,则执行目标代码。
3、防抖函数如下:
/** * fn:需要被防抖执行的函数 * wait :防抖的间隔时间,即函数在多少时间后执行,单位ms */ function debounce(fn,wait){ var timer = null; return function(){ if(timer !== null){ clearTimeout(timer); } timer = setTimeout(fn,wait); } }
4、防抖函数使用方法:
/** *toSearch():需要执行的函数,例如此处是笔者写的toSearch()搜索函数,给toSearch()搜索函数加防抖 */ debounce(toSearch(), 1000)
时间仓促,如有错误欢迎指出,欢迎在评论区讨论,如对您有帮助还请点个推荐、关注支持一下
作者:莫颀
出处:https://www.cnblogs.com/bokemoqi/p/17083583.html
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利。
若内容有侵犯您权益的地方,请公告栏处联系本人,本人定积极配合处理解决。