Javascript基础:实现防抖函数(debounce)

一、实现防抖函数

防抖函数原理:在事件被触发n秒后再执⾏回调,如果在这n秒内⼜被触发,则重新计时。

手写简化版:

// 防抖函数 
const debounce = (fn, delay) => {
    
     
					let timer = null; 
					return (...args) => {
    
     
						clearTimeout(timer); 
						timer = setTimeout(() => {
    
     fn.apply(this, args); }, delay); 
						}; 
				};

适⽤场景:

  • 按钮提交场景:防⽌多次提交按钮,只执⾏最后提交的⼀次 。
  • 服务端验证场景:表单验证需要服务端配合,只执⾏⼀段连续的输⼊事件的最后⼀次,还有搜索联想词功能类似 。

补充:(生存环境请用lodash.debounce)

猜你喜欢

转载自blog.csdn.net/imagine_tion/article/details/111398332
今日推荐