throttle

阻尼函数

by yakun chen

JavaScript

var throttle = function(fn, interval) {
	var timer,
  		firstTime
      
      return function() {
      	var args = arguments,
        		_me = this
            
        if (firstTime) {
        		fn.apply(_me, args)
            return firstTime = false
        }
        
        if(timer) {
        		return false
        }
        
        timer = setTimeout(function() {
        		clearTimeout(timer)
            timer = null
            fn.apply(_me, args)
        }, interval || 500)
      }
}

window.onresize = throttle(function() {
	console.log(new Date - 0)
}, 300)