多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
// 函数节流 : 一个函数执行一次后,只有大于设定的执行周期才会执行第二次 ```js function throttle(funct, delay) { // fn -- 要节流的函数; delay --间隙时间 var lastTime = 0; // 上次函数执行的时间 return function () { var nowTime = Date.now(); // 记录当前函数触发的时间 if((nowTime - lastTime) > delay ){ funct.call(this); // 修正this lastTime = nowTime ; // 同步时间 } } } document.onscroll = throttle(function () { console.log('scoroll事件被触发来' + Date.now());}, 200); ``` // 防抖函数 : 一个需要频繁触发的函数,在规定时间内,只让最后一次生效,前面的不生效 ```js function debounce(fn, delay) { var timer = null; return function(){ clearTimeout(timer); timer = setTimeout(function () { fn.apply(this); }, delay) } } document.getElementById('btn').onclick = debounce(function () { console.log('点击事件被触发了' + Date.now())}, 1000); ```