了解 JavaScript 的睡眠功能
与其他编程语言不同,JavaScript 缺乏用于暂停执行的本机 sleep() 函数。然而,对 JavaScript 中真正睡眠机制的追求导致了各种技术的出现。
Pausecomp 函数:早期尝试
其中一个尝试就是pausecomp函数,它引入了一种通过手动检查当前系统时间与初始时间戳来引发暂停的粗略方法。虽然它在当时达到了它的目的,但后来的进步使它已经过时了。
现代 JavaScript 解决方案:Promises 和 Async/Await
今天,推荐的实现方法JavaScript 中的 sleep 利用 Promises 和 async/await 语法。这种方法提供了一个干净、简单的解决方案:
function sleep(ms) { return new Promise(resolve => setTimeout(resolve, ms)); }
要使用此功能:
await sleep(2000); // Pauses execution for 2 seconds
现代方法的好处
现代方法与以前的方法相比,该方法具有多个优点方法:
使用示例
这是 sleep() 的演示运行中的函数:
async function demo() { for (let i = 0; i < 5; i++) { console.log(`Waiting ${i} seconds...`); await sleep(i * 1000); } console.log('Done'); } demo();
此代码模拟睡眠功能,每次迭代都会等待越来越多的秒数,然后打印“等待”消息并最终记录“完成”。
以上是如何在 JavaScript 中实现睡眠函数?的详细内容。更多信息请关注PHP中文网其他相关文章!