根据下划线文档 http://underscorejs.org/:
throttle_.throttle(函数,等待)
创建并返回一个新的,
所传递函数的节流版本,在调用时
重复,实际上最多只会调用原始函数一次
每等待毫秒。对于速率限制事件很有用
发生的速度比您能跟上的要快。
这是什么意思Useful for rate-limiting events that occur faster than you can keep up with
.
这个函数相当于setTimeout加上一个调用自身的函数?
有人可以给我一些关于 jsfiddle 的例子吗?
这不仅仅是 setTimeout()
尝试这个
var a = _.throttle(function(){console.log('called')}, 1000);
while(true) {
a();
}
它将每秒调用一次,而不是每次迭代调用一次。
在原生 JS 中,它看起来像:
var i = null;
function throttle(func, delay){
if (i) {
window.clearTimeout(i);
}
i = window.setTimeout(func, delay)
}
不完全相同,只是为了说明该函数被调用一次
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)