1. 首页 > 快讯

typescript 方法(typescript特性)

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

TypeScript 条件类型

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

有哪些条件类型?

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

  • T extends U ? X : Y
  • T 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> = T extends string ? true : false; // 检查 T 是否是 string 类型

type IsArray<t> = T extends Array<any> ? true : false; // 检查 T 是否是 Array 类型

type NotNull<t> = T extends null | undefined ? never : T; // 从 T 中排除 null 和 undefined</t></any></t></t>
登录后复制

用法

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

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

注意

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

本文采摘于网络,不代表本站立场,转载联系作者并注明出处:https://www.iotsj.com//kuaixun/5869.html

联系我们

在线咨询:点击这里给我发消息

微信号:666666