타이머 타이머 함수 setTimeout, clearTimeout setInterval, clearInterval 디바운스와 스로틀 디바운스 const $input = document.querySelector('input'); const $msg = document.querySelector('.msg'); const debounce = (callback, delay) => { let timerId; // debounce 함수는 timerId를 기억하는 클로저를 반환한다. return (...args) => { // delay가 경과하기 이전에 이벤트가 발생하면 이전 타이머를 취소하고 새로운 타이머를 재설정한다. // 따라서 delay보다 짧은 간격으로 이벤트가 발생하면 callback은 호출되지 않는다. ..