const dom = document.getElementById('myInput');
// let timer;
// dom.addEventListener('keyup', () => {
// if (timer) {
// clearTimeout(timer);
// }
// timer = setTimeout(() => {
// console.log(dom.value)
// timer = null;
// }, 500)
// })
function debounce(fn, delay = 500) {
let timer = null;
return function() {
if (timer) {
clearTimeout(timer);
}
timer = setTimeout(() => {
fn.call(this, arguments);
timer = null;
}, delay)
}
}
dom.addEventListener('keyup', debounce(function(count) {
console.log(dom.value)
}, 500))
<input id="myInput" />