间隔太慢

时间:2018-11-26 14:26:06

标签: javascript settimeout setinterval

间隔不是每毫秒运行一次。最终号码只能在停止前达到459。如果间隔上只有一行,则更少。在这里,它甚至不会移动到前一千。我想要的是每秒运行一次,让我知道一个间隔完成了多长时间。因此,如果testNum是30岁,那么我知道它是(2970/3000)的97%。

let testNum = 3000
let testInt = setInterval(() => {
    testNum--
}, 1)
let testTimeout = setTimeout(() => {
    clearInterval(testInt)
    console.log('Final Number: ' + testNum)
}, 3000)

1 个答案:

答案 0 :(得分:4)

来自https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setInterval#Parameters

  

delay

     

计时器(以毫秒(千分之一秒)为单位)应该在指定函数或代码的两次执行之间延迟。 如果此参数小于10,则使用值为10。

也来看看Reasons for delays longer than specified