Javascript 奇怪的随机值作为默认的间隔处理程序参数
刚刚遇到这个。这实际上并没有影响任何事情,但我想知道为什么会发生这种情况 如果我在firefox中运行以下代码并启用firebug:Javascript 奇怪的随机值作为默认的间隔处理程序参数,javascript,firefox,setinterval,Javascript,Firefox,Setinterval,刚刚遇到这个。这实际上并没有影响任何事情,但我想知道为什么会发生这种情况 如果我在firefox中运行以下代码并启用firebug: setInterval(function(param) { console.log("param is %o",param) },500); param似乎被分配了一个模糊的随机值: param is -2 param is -1 param is -2 param is 1 param
setInterval(function(param)
{
console.log("param is %o",param)
},500);
param似乎被分配了一个模糊的随机值:
param is -2
param is -1
param is -2
param is 1
param is -1
param is 6
param is -1
param is 0
param is -2
param is 2
param is 0
param is 2
param is 0
param is 0
param is 0
[..]
param is 0
param is 0
param is 0
param is 0
param is 0
param is 0
param is 0
param is 911
param is 0
param is 0
param is 0
param is -1
我很感激我没有将任何参数传递给setInterval来传递给函数,但是为什么javascript选择传递这个随机数呢
我本以为是未定义的或类似的东西
干杯
p、 这似乎取决于Firefox的CPU使用情况 我猜这是应该调用回调的延迟
编辑:。它是调用回调的延迟毫秒数。它是由
窗口自动设置的间隔ID。setInterval
。如果存储结果,可以稍后清除间隔(以停止间隔)
窗口也是如此。setTimeout
:
var timeID = window.setTimeout( function(){ alert("I'm annoying!"); }, 10000 );
// this will kill it before it annoys you, :D
window.clearTimeout( timeID );
你误解了他的问题。他不是问
setInterval
返回什么;他在问回叫的是什么。是的,我的错,刚刚意识到这一点。这很奇怪。这是一个错误的答案,但可能有人也不知道,所以做得好。有道理。似乎总是作为一个附加参数添加。因此,如果传递了两个参数,则该值是第三个。是的,我刚刚在该页面上。顺便说一下,您可以更简单地这样测试:setInterval(console.log,500)
。
var timeID = window.setTimeout( function(){ alert("I'm annoying!"); }, 10000 );
// this will kill it before it annoys you, :D
window.clearTimeout( timeID );