我正在为个人需求开发类似脚本的控制台。我需要能够暂停很长一段时间,但是,根据我的研究,node.js无法按需停止。一段时间后,读取用户的信息变得越来越困难……我已经看到了一些代码,但是我相信他们必须在其中包含其他代码才能使他们工作,例如:
setTimeout(function() { }, 3000);
但是,我需要这段代码之后的所有内容才能在一段时间后执行。
例如,
//start-of-code console.log('Welcome to My Console,'); some-wait-code-here-for-ten-seconds.......... console.log('Blah blah blah blah extra-blah'); //endcode.
我也看过类似的东西
yield sleep(2000);
但是node.js无法识别这一点。
我如何才能实现这种长时间的暂停?
最好的方法是将代码分成多个功能,如下所示:
function function1() { // stuff you want to happen right away console.log('Welcome to My Console,'); } function function2() { // all the stuff you want to happen after that pause console.log('Blah blah blah blah extra-blah'); } // call the first chunk of code right away function1(); // call the rest of the code and have it execute after 3 seconds setTimeout(function2, 3000);
它与 JohnnyHK 的解决方案相似,但是更加整洁并且易于扩展。