typescript条件类型有哪些

条件类型允许基于条件动态创建类型,分为两种:T extends U ? X : Y,检查 T 是否可以赋值给 U,可赋值返回 X,否则返回 Y。T extends U = true ? X : Y,检查 T 是否严格等于 U,相等返回 X,否则返回 Y。条件类型用于类型守卫、类型转换和创建通用函数,但仅适用于类型变量。

typescript条件类型有哪些

TypeScript 条件类型

TypeScript 中的条件类型是一种高级特性,允许开发者基于类型谓词动态创建新的类型。通过使用条件类型,可以创建复杂的类型,这些类型会根据特定的条件而改变。

有哪些条件类型?

TypeScript 中有以下两种主要的条件类型:

T extends U ? X : YT extends U = true ? X : Y

条件类型如何工作?

T extends U ? X : Y

检查类型变量 T 是否可以赋值给类型 U。如果可以,则返回类型 X。如果不可以,则返回类型 Y。

T extends U = true ? X : Y

检查类型变量 T 是否可以严格等于类型 U。如果相等,则返回类型 X。如果不相等,则返回类型 Y。

示例

以下是一些条件类型的示例:

type IsString = T extends string ? true : false; // 检查 T 是否是 string 类型type IsArray = T extends Array ? true : false; // 检查 T 是否是 Array 类型type NotNull = T extends null | undefined ? never : T; // 从 T 中排除 null 和 undefined

登录后复制

用法

条件类型可以用于各种场景,例如:

类型守卫:检查一个值是否属于特定类型。类型转换:将一个类型转换为另一个类型。创建通用函数:编写适用于各种类型的函数。

注意

条件类型只能用于类型变量,不能用于值。条件类型的结果类型必须是 TypeScript 中的合法类型。

以上就是typescript条件类型有哪些的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2666849.html

(0)
上一篇 2025年3月7日 12:11:19
下一篇 2025年2月25日 03:34:30

AD推荐 黄金广告位招租... 更多推荐

相关推荐

发表回复

登录后才能评论