实现节流函数

发布时间:2024年01月15日
// 节流,控制函数的执行频率,一定时间间隔内只执行一次
function throttle (func, delay) {
    if (typeof func !== 'function') {
        return
    }
    let lastTime = 0
    return function() {
        const currentTime = new Date().getTime()
        if (currentTime - lastTime >= delay) {
            func.apply(this, arguments)
            lastTime = currentTime
        }
    }
}

function fun(params) {
    console.log('节流', params)
}

const throttleFun = throttle(fun, 1000)
// 一秒钟多次被调用,但是只会执行一次
throttleFun(1)
setTimeout(() => {
    throttleFun(2)
}, 200);
setTimeout(() => {
    throttleFun(3)
}, 1000);

文章来源:https://blog.csdn.net/qq_17335549/article/details/135592370
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。