節流原理以及實現

//原理:在連續觸發某個函數時,讓該函數隔一段時間執行一次
function throttle(fn,wait){
    wait = wait || 1000;
    let flag = true;
    return function(){
        if(!flag){
            flag = false;
            setTimeout(()=>{
                flag = true;
                fn.apply(this,arguments)//保證this指向 和 參數的傳遞
            },wait)
        }
    }
}
function f(){
    console.log(this)
}
window.onscroll = throttle(f,1000)
複製代碼
相關文章
相關標籤/搜索