Middle
função debounce(callback, delay) {}
sobes.tech IA
Resposta da IA
A função debounce permite limitar a frequência de chamada da função callback passada. Ela retarda a execução de callback até que passe um intervalo delay sem novas chamadas. Isto é útil, por exemplo, ao lidar com eventos de entrada ou rolagem, para não chamar a função com demasiada frequência.
Exemplo de implementação em JavaScript:
function debounce(callback, delay) {
let timerId;
return function(...args) {
clearTimeout(timerId);
timerId = setTimeout(() => {
callback.apply(this, args);
}, delay);
};
}
// Uso:
const debouncedFunc = debounce(() => console.log('Chamada!'), 300);
window.addEventListener('resize', debouncedFunc);
Neste exemplo, callback será chamado apenas após o evento resize deixar de ocorrer durante 300 ms.