首页 > 代码库 > js 节流函数

js 节流函数

函数节流背后的基本思想是,某些代码不可以在没有间断的情况连续重复执行。第一次调用函数,创建一个定时器,在指定的时间间隔之后运行代码。

当第二次调用该函数时,它会清除前一次的定时器并设置另一个。如果前一个定时器已经执行过了,这个操作就没有任何意义。然而,如果前一个定时

器尚未执行,其实就是将其替换为一个新的定时器。目的是只有在执行函数的请求停止了一段时间之后才执行。
     function throttle ( method , context ){
                clearTimeout ( method.tId );
                method.tId = setTimeout ( function () {
                     method.call ( context );
                 } , 100);
          }

    function throttle(method,delay){            

      var timer=null;           

       return function(){                

        var context=this, args=arguments;               

          clearTimeout(timer);                

        timer=setTimeout(function(){                   

           method.apply(context,args);

         },delay);} 

     }

js 节流函数