在javascript中有更好的睡眠函数方法吗

在javascript中有更好的睡眠函数方法吗,javascript,settimeout,Javascript,Settimeout,祝大家今天过得愉快。 我正在为一个游戏做这个项目,我想在赢的情况下,它会等待2秒钟,然后返回到我使用这个代码做的起点 function sleep(delay) { var start = new Date().getTime(); while (new Date().getTime() < start + delay); } 为此,请使用setTimeout deactivateGame(); setTimeout(function(){ activateGame() }

祝大家今天过得愉快。 我正在为一个游戏做这个项目,我想在赢的情况下,它会等待2秒钟,然后返回到我使用这个代码做的起点

function sleep(delay) {
var start = new Date().getTime();
while (new Date().getTime() < start + delay);
} 

为此,请使用setTimeout

deactivateGame();

setTimeout(function(){

    activateGame()
}, 2000)

在上面的示例中,
activateGame
deactivateGame
功能将在游戏上方放置一些指示器,告知用户游戏正在等待。

对于一款游戏,您不希望等待时间阻塞所有UI(您正在谈论的冻结),因此您的睡眠需要某种程度上是异步的。对于您的PG程序的整体架构,需要记住这一点。如果不了解应用程序的体系结构,就很难正确引导您。也就是说,您没有提供一个显示这种冻结的示例,因此我们可以继续工作。
deactivateGame();

setTimeout(function(){

    activateGame()
}, 2000)