timeoutHandle = setTimeout(function() {
//code
},1000);
alert(timeoutHandle)
返回一些奇怪的数字,如 1 或 2,它是否应该像 900
和倒数到 0
时该函数称为?所以我想我做错了。
最佳答案
您可以使用 Date.getTime()
获取 Date
对象的毫秒表示,因此(相当准确的)近似值是:
timeoutHandle = setTimeout(function() {
// code
}, 1000);
<strong>timeoutStart = new Date().getTime();
...
var elapsedTime = new Date().getTime() - timeoutStart;</strong>
setTimeout
和 setInterval
的返回值只是一种“定时器 ID”——您可以使用它来停止带有 clearTimeout
的定时器和 clearInterval
,它不会动态变化。
编辑:正如@Rocket 指出的,是的,您可以使用 Date.now()
而不是 new Date().getTime()
。
关于javascript - 如何读取已设置的超时句柄还剩多少时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8690539/