debounce和throttle分析

debounce和throttle都是为了防止在一定时间内连续触发某个函数.具体有所不同.

debounce

英文中意思:防抖动, 防反跳.

指的是在连续触发函数中,在规定事件n最后一次触发
比如鼠标连续mouseMove某个文字时,文字显示次数+1. 要求move停止1秒后+1. 小于1s的不触发+1


image.png

throttle

英文

n.节流阀; 喉咙,气管; [机]风门;
vt.& vi.扼杀,压制; 勒死, 使节流; (用节汽阀等)调节
vi.节流,减速;

以mouseMove为例.
throttle(func, 1000). 连续hover时1s内最多执行一次,与最后一次没有关系.


image.png

你可能感兴趣的:(debounce和throttle分析)