为什么setInterval会返回一个整数(新手)

3
function myTimer() {
   return new Date().toLocaleTimeString();
}

setInterval(function(){ myTimer() }, 1000);

为什么单独调用myTimer时返回期望的字符串,但通过setInterval调用时却返回整数?


你可以用整数来识别一个时间间隔,并使用 clearInterval 停止该时间间隔。 - Teemu
3
setInterval 返回一个整数类型的值。在 setInterval/setTimeout 调用的函数中返回值是没有意义的,因为无法获取到该返回值。因此,在这种情况下返回值是毫无意义的。 - Jaromanda X
1
具体来说,setInterval返回一种“id”,以便您稍后可以清除它。 myTimer的返回值只被超时吞噬了。因此,这两个返回值完全不相关。 new Date仅在setInterval函数内部范围内。 - Shilly
1个回答

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接