(800~806)
타이머 함수
디바운스와 스로틀
const debounce = (callback, delay) => {
let timerId;
return (...args) => {
if (timerId) clearTimeout(timerId);
timerId = setTimeout(callback, delay, ...args);
}
}
const throttle = (callback, delay) => {
let timerId;
return (...args) => {
if (timerId) return;
timerId = setTimeout(()=>{
callback(...args);
timerId = null;
}, delay);
};
};