跳到主要内容

简述如何在 TypeScript 中使用 async/await?

参考答案:

在 TypeScript 中使用 async/await 的方式与在 JavaScript 中使用它们的方式基本相同。Async/await 是用于处理异步操作的关键字,它让异步代码看起来像同步代码一样,提高了代码的可读性和可维护性。

下面是一个简单的例子,演示了如何在 TypeScript 中使用 async/await:

// 定义一个异步函数,模拟一个异步操作
async function fetchData(): Promise<string> {
  return new Promise<string>((resolve, reject) => {
    setTimeout(() => {
      resolve('Data fetched!');
    }, 2000);
  });
}

// 使用 async/await 来调用异步函数
async function main() {
  try {
    console.log('Fetching data...');
    const data = await fetchData(); // 等待 fetchData 函数完成并返回结果
    console.log(data);
  } catch (error) {
    console.error('Error:', error);
  }
}

// 调用 main 函数
main();

在这个例子中,fetchData 函数是一个异步函数,它返回一个 Promise。在 main 函数中,我们使用 await 关键字来等待 fetchData 函数完成并返回结果。注意,main 函数也需要被声明为 async,因为只有 async 函数内部才能使用 await 关键字。

fetchData 函数完成后,它会解决它的 Promise,并将结果传递给 data 变量。然后,我们打印出 data 变量的值。如果 fetchData 函数抛出错误,它会被 catch 块捕获,并打印出错误信息。

总的来说,使用 async/await 可以使异步代码更加易于理解和维护。在 TypeScript 中使用它们的方式与在 JavaScript 中使用它们的方式相同,因此你可以使用相同的模式和最佳实践来编写健壮的异步代码。