js函数编写及调用

Js中的函数大多数情况下都是由用戶主动调用触发的一般不会遇到性能相关的问题。但在一些少数情况下函数的触发不是由用户直接控制。在这些场景下函数有可能被非常频繁地调用,而造成大的性能问题

  1. window.onresize事件。如果我们给window对象绑定了resize事件当浏览器窗口大小被改变的时候,这个事件的触发的频率非常高(其实任何元素节点也是可以绑定resize事件的,如何实现可参考 也可以使用第三方库 )

函数节流的原理就是使用定时器来控制函数调用。当触发一个事件函数时先setTimout让这个事件延迟一会再执行,如果在这个时间间隔内又触发了事件那我们就clear掉原来的定时器,再setTimeout一个新的萣时器延迟一会执行

if(timer){ //如果定时器还在,说明前一次延迟执行还没有完成

我要回帖

 

随机推荐