JSFiddle - React, Tailwind, and code Playground
HTML
<input id="inp" />
JavaScript
var timer = null;
var interval = 3000;
$('#inp').keyup(function () {
if (timer != null) {
window.clearTimeout(timer)
}
timer = window.setTimeout(done, interval);
});
$('#inp').keydown(function () {
if (timer != null) {
window.clearTimeout(timer);
timer = null;
}
});
function done() {
timer = null;
console.log('ajax');
}