2020年3月9日
《每日一題系列??》
作者:王二狗
博客:掘金粱快、思否娩梨、知乎沿腰、簡書、CSDN
點贊再看狈定,養(yǎng)成習慣颂龙,每日一題系列會一直更新下去,你們的支持是我持續(xù)分享的最大動力??
什么是函數(shù)防抖纽什?
所謂函數(shù)防抖措嵌,就是說任務頻繁觸發(fā)的情況下,只有任務觸發(fā)的間隔超過指定間隔的時候芦缰,任務才會執(zhí)行.
為了更方便你的理解企巢,這里舉一個快遞員送餐的例子。
如果快遞員在送餐的時候一次只送一單让蕾,這個時候顯然效率就會非常的低浪规,那么為了提高效率,我們制定了這樣一個規(guī)則涕俗。
他在接到一個訂單的時候會等上5分鐘罗丰,如果在這5分鐘之內(nèi)有新的訂單,他就會再等上5分鐘再姑。
那么什么時候不等了呢萌抵,開始去送餐呢?
就是當他等待的時間超過了5分鐘還是沒有新的訂單,他就不等了绍填,就開始去送餐霎桅。
下面我們用實際的代碼模擬一下這個過程:
function deliveryFood(){}
//設置定時器
var timeId = null
//點下按鈕之后,快遞員接到第一單
button.onclick = function(){
//如果有新的訂單讨永,就清除之前的定時器滔驶,再等上5分鐘
if(timeId){
window.clearTimeout(timeId)
}
timeId = setTimeout(()=>{
//如果5分鐘之內(nèi)沒有新的訂單,就開始去送餐卿闹,并清楚定時器
deliveryFood();
timeId = null
},5000)
}
告誡自己揭糕,即使再累也不要忘記學習,成功沒有捷徑可走锻霎,只有一步接著一步走下去著角。 共勉!
文章中如有不對的地方旋恼,歡迎小伙伴們多多指正吏口。
謝謝大家~ ??