Avatar ·

如何在 TypeScript 中实现 sleep 函数(延迟)?

大家好!我是一名 TypeScript 和 Angular 的初学者开发者。遇到了这样一个任务:需要在代码执行中暂停,例如模拟数据加载或在重复请求 API 前添加延迟。 在 JavaScript 中我见过 setTimeout 函数,但它不会阻塞执行,只是延迟回调的调用。我需要类似 sleep(2000) 的东西,让代码执行暂停 2 秒,然后继续。 以下是我尝试过的代码: ```typescript function sleep(ms: number) { setTimeout(() => { // 应该发生什么? }, ms); } async function loadData() { console.log('开始加载...'); sleep(2000); // 我想等待 2 秒 console.log('数据已加载'); // 这行会立即执行 } ``` 但代码不起作用——第二个 console.log 立即执行,没有延迟。如何在 TypeScript 中正确实现 sleep?是否需要使用 Promise 或 async/await?希望得到带解释的示例。 最好