迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > TypeScript >

Typescript 中 setTimeout() 的返回类型是什么

作者:迹忆客 最近更新:2023/01/18 浏览次数:

使用 ReturnType 实用程序类型获取 setTimeout 方法的返回类型,例如 const timeout: ReturnType<typeof setTimeout> = setTimeout()。 ReturnType 实用程序类型构造一个由函数的返回类型组成的类型。

const timeout: ReturnType<typeof setTimeout> = setTimeout(() => {
  console.log('success');
}, 1500);

console.log(timeout);

ReturnType 实用程序类型允许我们构造一个由传入函数的返回类型组成的类型。

function sum(a: number, b: number) {
  return a + b;
}

// 👇️ type T = number
type T = ReturnType<typeof sum>;

这种方式是需要的,因为 setTimeout 方法的返回类型在Node中是 NodeJS.Timeout,在浏览器中是 number。

通过使用 ReturnType 实用程序类型,无论是在服务器端还是客户端编写代码,我们都可以获得 setTimeout 方法的正确返回类型。

需要注意的是,尽管 setTimeout 方法的返回类型在 Node.js 和浏览器之间不同,但返回值的使用方式相同——如果需要,它会被传递给 clearTimeout() 方法以取消超时。

const timeout: ReturnType<typeof setTimeout> = setTimeout(() => {
  console.log('success');
}, 1500);

clearTimeout(timeout);

clearTimeout 方法以数字或 NodeJS.Timeout 对象作为参数(取决于环境),因此我们可以直接将超时值传递给该方法。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 TypeScript 中返回一个 Promise

发布时间:2023/03/19 浏览次数:182 分类:TypeScript

本教程讨论如何在 TypeScript 中返回正确的 Promise。这将提供 TypeScript 中 Returns Promise 的完整编码示例,并完整演示每个步骤。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便