问题引出:
什么是函数节流?什么是函数防抖?
1. 函数节流
函数节流:一个函数执行一次后,只有大于设定的时间周期才会执行第二次。
函数节流限制一个函数在一定时间内只能执行一次。
场景:有个需要频繁触发的函数,出于性能优化角度,在规定的时间内,
只让函数触发的第一次生效,后面的不生效。
代码实现:
/*
节流函数:throttle
fn: 要被节流的函数
delay:规定的时间
*/
function throttle(fn,delay){
// 记录上一次触发的时间
var lasttime = 0 ;
// 通过闭包的方式使用lasttime变量,每次都是上次的时间
return function(){
//
var nowtime = Date.now