Debounce

Debouncing enforces that a function not be called again until a certain amount of time has passed without it being called. As in “execute this function only if 500 milliseconds have passed without it being called.” (Scroll or move mouse wheel in the canvas below)

Throttle

Throttling enforces a maximum number of times a function can be called over time. As in “execute this function at most once every 500 milliseconds.”