对函数防抖和函数节流的简单理解
函数防抖
在一段时间内,用户对事件函数反复触发,则以最后一次触发为准,且每次触发,都会重新计算这段时间
函数节流
在一段时间内,不管用户怎样触发,事件函数最多只会执行一次(限制了事件的执行周期)
相同点: 都是为了优化js代码的执行频率,提高代码性能
不同点:
函数防抖一般是对用户主动触发事件的处理,如: 搜索框输入, 鼠标快速移入移出
函数节流一般是针对事件本身的处理,如: 页面滚轮滚动(onscroll),页面鼠标移动事件(onmousemove)
在一段时间内,用户对事件函数反复触发,则以最后一次触发为准,且每次触发,都会重新计算这段时间
在一段时间内,不管用户怎样触发,事件函数最多只会执行一次(限制了事件的执行周期)
相同点: 都是为了优化js代码的执行频率,提高代码性能
不同点:
函数防抖一般是对用户主动触发事件的处理,如: 搜索框输入, 鼠标快速移入移出
函数节流一般是针对事件本身的处理,如: 页面滚轮滚动(onscroll),页面鼠标移动事件(onmousemove)