SOURCE

function debounce(func,delay){
    let timerId;
    return function(...args){
        clearTimeout(timerId)
        setTimeout(()=>{
            func.apply(this,args)
        },delay)
    }
}
// 原始函数,可能会频繁触发
function handleInput(value) {
  console.log('输入值为:', value);
}

// 使用防抖包装后的函数
const debouncedInput = debounce(handleInput, 300); // 300毫秒的防抖间隔

// 监听输入事件,使用防抖函数
document.querySelector('input').addEventListener('input', (event) => {
  debouncedInput(event.target.value);
});
console 命令行工具 X clear

                    
>
console