JavaScript的防抖和节流案例

编辑: admin 分类: javascript 发布时间: 2022-01-05 来源:互联网
目录
  • 防抖
  • 节流:

防抖:在一定的时间内只执行最后一次任务;

节流:一定的时间内只执行一次;

防抖

<button id="debounce">点我防抖!</button>
 
$('#debounce').on('click', debounce());
 
function debounce() {
    let timer;
    /【文章出处:防御服务器 】/ 闭包
    return function () {
        clearTimeout(timer);
        timer = setTimeout(() => {
            // 需要防抖的操作...
            console.log("防抖成功!");
        }, 500);
    }
}

在这里插入图片描述

节流:

<button id="throttle">点我节流!</button>
 
$('#throttle').on('click', throttle());
 
function throttle(fn) {
    let flag = true;
    // 闭包
    return function () {
        if (!flag) {
            return;
        }
        flag = false;
        setTimeout(() => {
            console.log("节流成功!");
            flag = true;
        }, 1000);
    };
}

在这里插入图片描述

到此这篇关于JavaScript的防抖和节流案例的文章就介绍到这了,更多相关JavaScript防抖和节流内容请搜索海外IDC网以前的文章或继续浏览下面的相关文章希望大家以后多多支持海外IDC网!