JSFiddle - React, Tailwind, and code Playground
HTML
<input oninput="onInputChange(event)" type="text" value="" />
JavaScript
var inputTimeouts = [];
function onInputChange(event){
var curTimeoutIndex = inputTimeouts.length + 1;
var timeout = setTimeout(function(){
if(curTimeoutIndex == inputTimeouts.length){
console.log(event.target.value)
inputTimeouts = [];
}
}, 3000);
inputTimeouts.push(timeout);
}