关于计时器数据赋值的问题

时雨行
  • 38
function(){
 let a = 0
 a = 1
 let loader = setInterval(function () {
            a += 1 
            clearInterval(loader)
        }, 1000)
 return a
}

我的预想是return的a为2,但是现在return的结果依旧是1,请问这个该怎么解决啊

回复
阅读 460
2 个回答
✓ 已被采纳

没办法,因为你方法是同步的,在你return出去的时候。setInterval 的回调并没有执行。

那么改成异步呢?

image.png

这题我会:

function diedZone(){
  const { now } = Date
  let a = 1
  const startMoment = now()
  while(now() - startMoment < 1000){}
  a++     
  return a
}
你知道吗?

宣传栏