Medium
Debounce — TypeScript
Full explanation · Time O(1) · Space O(1)
// Time: O(1)
// Space: O(1)
type F = (...p: any[]) => any
function debounce(fn: F, t: number): F {
let timeout = null;
return (...args) => {
clearTimeout(timeout);
timeout = setTimeout(fn, t, ...args);
}
};