TypeScript 实现 sleep 方法
学习笔记作者:admin日期:2025-05-28点击:20
摘要:介绍如何在 TypeScript 中使用 Promise 和 setTimeout 创建 sleep 函数,并展示其在异步代码中的应用。
TypeScript 中实现 sleep 方法
在 TypeScript 中没有内置的 sleep 函数,但可以通过 JavaScript 的 Promise 和 setTimeout 实现。
方法示例
function sleep(ms: number): Promise<void> {
return new Promise(resolve => setTimeout(resolve, ms));
}
async function demo() {
console.log("Start");
await sleep(2000); // 等待2秒
console.log("End after 2 seconds");
}
demo();
参数说明
- ms: 毫秒数(1 秒 = 1000 毫秒)
注意事项
- 避免在同步代码中滥用 sleep。
- 推荐在异步函数中使用 await。
高级技巧
可以将 sleep 封装到工具类中供全局使用:
// utils.ts
export function sleep(ms: number): Promise<void> {
return new Promise(resolve => setTimeout(resolve, ms));
}
在其他文件中导入使用:
import { sleep } from './utils';
async function run() {
console.log('Hello');
await sleep(1000);
console.log('World');
}
run();