函数节流
一个函数执行一次后,只有大于设定周期才会执行第二次
---有个频繁触发的函数,出于性能优化角度,在规定时间内,只让第一次触发的函数生效,后面的不生效
function throttle(fn,delay){
var lastTime=0
return function(){
var nowTime=Date.now()
if(nowTime-lastTime>delay){
fn.call(this)
lastTime=nowTime
}
}
}
防抖函数
一个频繁触发的函数,在规定时间内,只让最后一次触发
function debunce(fn,delay){
var timer=null
return function(){
clearTimeout(timer)
timer=setTimeout(function(){
fn.call(this)
},delay)
}
}