用flex做的网站,网站营运费,seo技术团队,网站建设丶金手指专业在实际项目中#xff0c;总会遇到一些函数频繁调用的情况#xff0c;比如window.resize#xff0c;mouseover#xff0c;上传进度类似的触发频率比较高的函数#xff0c;造成很大的性能损耗#xff0c;这里可以使用节流函数来进行性能优化#xff0c;主要是限制函数被频…在实际项目中总会遇到一些函数频繁调用的情况比如window.resizemouseover上传进度类似的触发频率比较高的函数造成很大的性能损耗这里可以使用节流函数来进行性能优化主要是限制函数被频繁调用的解决方案 let throttle function(fn,interval){let __self fn,timer,firstTime true;return function(){var args arguments,__me this;if(firstTime){__self.apply(__me,args);return firstTime false;}if(timer){return false;}//先执行了一次firstTime是false,然后500毫秒之后利用定时器再次执行。timer setTimeout(function(){clearTimeout(timer);timer null;__self.apply(__me,args);},interval||500)}
}window.onresize throttle(function(){console.log(1)
},500) 此函数可以触类旁通,throttle是个高阶函数参数输入是个函数【该频繁调用的函数】以及触发时间第一次触发有个只执行一次的方法后面接着就是定时器触发函数。节流函数的本质就是利用定时器的延迟进行函数触发。 【完】 后来我才知道,他并不是我的花。只是我恰好途径了他的盛放。转载于:https://www.cnblogs.com/tangjiao/p/9915537.html