美文网首页
函数节流

函数节流

作者: 疯狂div | 来源:发表于2017-12-26 20:51 被阅读0次

所谓节流,就是避免函数多次执行,比如window.onresize 函数,在改变窗口大小的时候回连续执行n次,严重消耗内存,又如表单input事件,每次输入都会触发这个事件,造成性能损耗。此时便需要运用函数节流。

实现原理:第一次调用函数,创建一个定时器,在指定的时间间隔之后运行代码。当第二次调用该函数时,它会清除前一次的定时器并设置另一个。如果前一个定时器已经执行过了,这个操作就没有任何意义。然而,如果前一个定时器尚未执行,其实就是将其替换为一个新的定时器。

列一:

此时每次输入都会调用queryData函数,对函数加以修改

此时输入内容,触发的事节流函数 throttle,在throttle中首先清楚上一次的定时器。如果在500毫秒之内,上一次的函数便来不及执行,重新生成了定时器,达到节流的目的

列二:

        当窗口改变时会立即调用n次getWidth函数知道停止改变窗口大小,

相关文章

网友评论

      本文标题:函数节流

      本文链接:https://www.haomeiwen.com/subject/iajegxtx.html