延迟异步函数执行

JavaScriptJavaScriptBeginner
立即练习

This tutorial is from open-source community. Access the source code

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

在本实验中,我们将探索如何在 JavaScript 中延迟异步函数的执行。通过使用 sleep 函数并返回一个 Promise,我们可以让 async 函数的一部分休眠一段时间,从而更好地控制和管理代码的执行。通过实际示例,我们将学习如何在实际场景中有效地实现此技术。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic Concepts"]) javascript(("JavaScript")) -.-> javascript/AdvancedConceptsGroup(["Advanced Concepts"]) javascript(("JavaScript")) -.-> javascript/ToolsandEnvironmentGroup(["Tools and Environment"]) javascript/BasicConceptsGroup -.-> javascript/variables("Variables") javascript/BasicConceptsGroup -.-> javascript/data_types("Data Types") javascript/BasicConceptsGroup -.-> javascript/comp_ops("Comparison Operators") javascript/BasicConceptsGroup -.-> javascript/loops("Loops") javascript/BasicConceptsGroup -.-> javascript/functions("Functions") javascript/AdvancedConceptsGroup -.-> javascript/async_prog("Asynchronous Programming") javascript/ToolsandEnvironmentGroup -.-> javascript/debugging("Debugging") subgraph Lab Skills javascript/variables -.-> lab-28270{{"延迟异步函数执行"}} javascript/data_types -.-> lab-28270{{"延迟异步函数执行"}} javascript/comp_ops -.-> lab-28270{{"延迟异步函数执行"}} javascript/loops -.-> lab-28270{{"延迟异步函数执行"}} javascript/functions -.-> lab-28270{{"延迟异步函数执行"}} javascript/async_prog -.-> lab-28270{{"延迟异步函数执行"}} javascript/debugging -.-> lab-28270{{"延迟异步函数执行"}} end

如何在 JavaScript 中延迟异步函数的执行

要在 JavaScript 中延迟异步函数的执行,你可以使用下面的 sleep 函数,它返回一个 Promise,该 Promise 会在一定时间后 resolve。以下是一个如何使用 sleep 延迟 async 函数一部分执行的示例:

const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));

async function sleepyWork() {
  console.log("我要睡 1 秒钟。");
  await sleep(1000);
  console.log("1 秒钟后我醒来了。");
}

要使用此函数,只需调用 sleepyWork(),控制台就会按顺序输出消息,两条消息之间间隔 1 秒钟。

总结

恭喜你!你已经完成了“延迟异步函数执行”实验。你可以在 LabEx 中练习更多实验来提升你的技能。