JavaScript sleep/wait

2025年3月17日 | 阅读 3 分钟

PHP 和 C 等编程语言都有一个 sleep(sec) 函数,用于将执行暂停固定一段时间。Java 有 thread.sleep(),Python 有 time.sleep(),GO 有 time.sleep(2*time.second)

与许多其他语言不同,JavaScript 没有内置的 sleep() 函数。我们可以使用一些方法来模拟 JavaScript 中的 sleep() 函数。JavaScript 中的 promisesasync/await 等特性使我们能够更轻松地使用 sleep() 函数。

await 用于等待一个 Promise,并且只能在 async 函数中使用。JavaScript 的行为是异步的,因此存在 Promise 的概念来处理这种异步行为。由于这种异步行为,它会继续执行而不会在执行过程中等待任何事情。Async/await 函数帮助我们以同步的方式编写代码。

如何在 JavaScript 中使用 sleep 函数?

在实现 JavaScript 中的 sleep 函数之前,理解 JavaScript 代码的执行方式非常重要。

JavaScript 中 sleep() 的语法

sleep() 函数可以与 async/await 一起使用,以在执行之间获得暂停。语法如下:

语法

以上语法是实现 JavaScript 中 sleep 功能的方法。现在,我们将看到在 JavaScript 中使用 sleep() 函数的示例。

示例 1

在此示例中,我们正在将 sleep() 函数与 async/await 功能一起使用。有一个名为 fun() 的函数,其中包含一些语句。最初,当函数启动时,文本 "Hello World" 会显示在屏幕上。然后,由于 sleep 函数,fun() 函数会暂停 2 秒。在给定的时间段完成后,文本 "Welcome to the TpointTech.com" 将会显示在屏幕上,并在循环终止之前重复显示。文本将在屏幕上重复显示 10 次,每次迭代暂停两秒。

输出

执行上述代码后,输出将是 -

JavaScript sleep/wait

两秒后,输出将变为 -

JavaScript sleep/wait

循环将迭代 10 次,每次迭代暂停 2 秒。

示例 2

在这里,我们使用 setTimeout() 函数创建一个 Promise。setTimeout() 函数在指定的延迟时间后执行代码。我们还使用 then() 方法,该方法在 Promise 完成后执行所需函数。

最初,一些语句显示在屏幕上。然后,在延迟 2 秒后,文本 "End" 将显示在屏幕上。

这种方法更适合延迟函数。由于使用了 Promise,因此它受 ES6 支持。

输出

执行上述代码后,输出将是 -

JavaScript sleep/wait

延迟 2 秒后,输出将是 -

JavaScript sleep/wait
下一主题JavaScript:void(0)