TypeScript 2.0中如何详细解释联合类型的用法?

更新于
2026-09-26 11:59:51
0阅读来源:SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计2345个文字,预计阅读时间需要10分钟。

TypeScript 2.0中如何详细解释联合类型的用法?

目录 + 使用标记的联合类型构建支付方式 + 使用标记联合类型构建 + Redux 操作 + never 类型 + 永不返回的函数 + 不可能有该类型的变量 + never 和 void 之间的区别 + 函数声明类型推断 + 使用标记的联合类型

目录
  • 使用标记的联合类型构建付款方式
  • 使用标记联合类型构建 Redux 操作
  • never 类型
  • 永不返回的函数
  • 不可能有该类型的变量
  • never 和 void 之间的区别
  • 函数声明的类型推断

使用标记的联合类型构建付款方式

假设咱们为系统用户可以选择的以下支付方式建模

  • Cash (现金)
  • PayPal 与给定的电子邮件地址
  • Credit card 带有给定卡号和安全码

对于这些支付方法,咱们可以创建一个 TypeScript 接口

interface Cash { kind: "cash"; } interface PayPal { kind: "paypal", email: string; } interface CreditCard { kind: "credit"; cardNumber: string; securityCode: string; }

注意,除了必需的信息外,每种类型都有一个kind属性,即所谓的判别属性。这里每种情况都是字符串字面量类型。

阅读全文

本文共计2345个文字,预计阅读时间需要10分钟。

TypeScript 2.0中如何详细解释联合类型的用法?

目录 + 使用标记的联合类型构建支付方式 + 使用标记联合类型构建 + Redux 操作 + never 类型 + 永不返回的函数 + 不可能有该类型的变量 + never 和 void 之间的区别 + 函数声明类型推断 + 使用标记的联合类型

目录
  • 使用标记的联合类型构建付款方式
  • 使用标记联合类型构建 Redux 操作
  • never 类型
  • 永不返回的函数
  • 不可能有该类型的变量
  • never 和 void 之间的区别
  • 函数声明的类型推断

使用标记的联合类型构建付款方式

假设咱们为系统用户可以选择的以下支付方式建模

  • Cash (现金)
  • PayPal 与给定的电子邮件地址
  • Credit card 带有给定卡号和安全码

对于这些支付方法,咱们可以创建一个 TypeScript 接口

interface Cash { kind: "cash"; } interface PayPal { kind: "paypal", email: string; } interface CreditCard { kind: "credit"; cardNumber: string; securityCode: string; }

注意,除了必需的信息外,每种类型都有一个kind属性,即所谓的判别属性。这里每种情况都是字符串字面量类型。

阅读全文