lodash _.debounce, _.throttle
throttle 메소드는 정해진 시간마다 console을 찍는다.
const $button = document.createElement('button');
document.body.append($button)
$button.textContent = 'click';
let count = 0;
let timeId;
$button.addEventListener('click', function () {
count++;
if (!timeId) {
timeId = setTimeout(() => {
console.log('clicked ', count);
timeId = null;
}, 500);
}
})
debounce메소드는 마지막 클릭에 대한 것을 반환한다.
const $button = document.createElement('button');
document.body.append($button)
$button.textContent = 'click';
let count = 0;
let timeId;
$button.addEventListener('click', function () {
count++;
if (timeId) clearTimeout(timeId);
timeId = setTimeout(() => {
console.log('clicked', count);
}, 500);
})