1.为什么用到函数节流?
- 最近在做瀑布流的页面时,使用到了window.onresize事件,功能页面却是实现了,但是console.log打印了一下,却发现拖动窗口时执行了大量次数,可想对于浏览器渲染页面的性能影响有多大。于是乎Google告诉了我函数节流。
2.函数节流思想
- 其实函数节流的思想很简单,就是定时器,让实行的频率降低下来,可参考一下代码。
window.onresize = throttle(function () {
console.log(document.documentElement.clientWidth);
}, 400);
//使用了闭包实现函数节流
function throttle(fn, delay) {
var timer = null;
return function () {
clearTimeout(timer);
timer = setTimeout(fn, delay)
}
}