防抖节流

相同点:在一段时间之后粗发对应的事件。

区别:防抖会有"延迟",而节流不会有这个特性。

 

防抖

防抖其实就是一种延迟触发,注意这个延迟,是重点。 假设现在延迟时间为5s,那么当你第一次触发事件之后,会延迟5s,在这5s内,你在此触发事件,有会延迟5s 也就是说,防抖会有"延迟"这个特性。

 

使用settimeout直接调用事件函数

每次触发事件的时候,清空timer。

使用settimeou直接来触发事件,比较麻烦,因为无法设置回调函数的this和参数,所以这里重写了settimeout



 

使用settimeout间接调用函数




 

节流:

假设节流设置为5s,第一次触发之后,5s内触发,不会有响应,但是不会 "延迟"。

 

 

 

 

 

 

你可能感兴趣的:(前端)