javascript 中的 sleep 方法:1. settimeout():延迟执行函数,缺点是延迟时间不准确;2. promise:创建异步完成的 promise,优点是延迟时间准确,可组合其他异步操作;3. async/await:编写看起来同步的异步代码,优点是可读性高,缺点是只能在带有 async 关键字的函数中使用。
JavaScript 中如何 Sleep 一秒
在 JavaScript 中,没有内置的 sleep 函数。然而,有几种方法可以实现类似的行为:
setTimeout()
setTimeout() 函数允许您计划在给定的延迟后执行函数。要 Sleep 一秒,可以使用以下代码:
setTimeout(() => { // 在这里执行 Sleep 后的代码 }, 1000);
优点:
- 简单易用。
缺点:
- 延迟时间不准确,可能存在误差。
Promise
Promise 可以用来表示异步操作的完成。要 Sleep 一秒,可以使用以下代码:
const sleepPromise = new Promise((resolve) => { setTimeout(() => { resolve(); }, 1000); }); sleepPromise.then(() => { // 在这里执行 Sleep 后的代码 });
优点:
- 延迟时间更准确。
- 可以轻松组合其他异步操作。
缺点:
- 语法稍显复杂。
async/await
async/await 语法允许您编写看起来同步的异步代码。要 Sleep 一秒,可以使用以下代码:
async function sleep() { await new Promise((resolve) => { setTimeout(() => { resolve(); }, 1000); }); } sleep().then(() => { // 在这里执行 Sleep 后的代码 });
优点:
- 代码可读性高,看起来像同步代码。
缺点:
- 只能在带有 async 关键字的函数中使用。