有睡眠/等待吗?

Posted

技术标签:

【中文标题】有睡眠/等待吗?【英文标题】:Is there a sleep/wait? 【发布时间】:2019-08-28 21:43:54 【问题描述】:

我的目标是测试一个计时器,以在我将其实施到我的 RPG Maker 项目之前检查该想法是否可行。最初,软件中有一个构建块方法来制作计时器/时钟,但我正试图从它继续前进并创建一个 javascript 代码来做到这一点。问题是,我需要它暂停片刻,这样计时器就不会中断。这将是游戏中的昼夜循环。

测试计时器将用于检查想法是否可行,如果不可行则进行调试。到目前为止它有效,但我无法暂停它。

var min = 0;
var hour = 0;
var timer = true;

alert("Testing Timer");

    do
        sec += 10; //Needs to pause for 5 secs after this line
        console.log(sec);
            if(sec >= 60)
                alert("It's " + hour + " : " + min + " : " + sec);
                min += 5;
                sec = 0;
                if(min >= 60)
                
                    hour += 1;
                    min = 0;
                
            
    while(timer === true);```

【问题讨论】:

您需要使用await 【参考方案1】:

您可以使用setTimeout 函数添加 5 秒(5000 毫秒)的延迟

setTimeout(()=> your code here, 5000);

【讨论】:

【参考方案2】:
function wait(milliscond) 
  return new Promise(resolve => setTimeout(resolve, milliscond));


var min = 0;
var hour = 0;
var timer = true;

alert("Testing Timer");

    do
        sec += 10; //Needs to pause for 5 secs after this line
        await wait(5000);
        console.log(sec);
            if(sec >= 60)
                alert("It's " + hour + " : " + min + " : " + sec);
                min += 5;
                sec = 0;
                if(min >= 60)
                
                    hour += 1;
                    min = 0;
                
            
    while(timer === true);

【讨论】:

以上是关于有睡眠/等待吗?的主要内容,如果未能解决你的问题,请参考以下文章

Lua微秒睡眠

是否有睡眠/等待/超时的竹任务?

JavaScript 中是不是有睡眠/暂停/等待功能? [复制]

JavaScript在继续之前睡眠/等待[重复]

同步异步阻塞非阻塞可中断的睡眠不可中断的睡眠

Excel Power Query - 睡眠或等待命令等待 API 速率限制