现在,我使用setInterval
作为参数测试以下关于setTimeout
和String
的代码。
>> setInterval(String,2)
2214
>> setInterval(String,2)
2215
在IE中,输出为2214
,我想知道为什么结果为2214
?
但是在Chrome中测试它,输出是
setInterval(String, 2)
18
setInterval(String, 2)
19
根据setInterval的语法:
setInterval(func|code, delay)
所以我尝试以下
>> String
function String() { [native code] }
>> String()
""
没有实际的数字结果。
我也尝试使用setTimeout
setInterval(String, 2)
20
setInterval(String, 2)
21
setTimeout(String, 2)
22
我不清楚这些代码发生了什么?
答案 0 :(得分:1)
setInterval()
和setTimeout()
返回计时器ID。如果您清除它们,这些可以帮助浏览器再次识别它们,但您无需担心它们的具体值。
运行的函数/代码与setInterval()
或setTimeout()
的返回值无关。代码的返回值AFAIK将被丢弃,除非你把它放在某个地方。正如Thilo在评论中所说,代码甚至不会在setInterval()
和setTimeout()
返回时运行。