https://programwithjayanth.com/interviews/javascript/debouncing-in-javascript/
Debouncing in Javascript