如何在 TypeScript 中表示包含多种类型的二维数组?
Posted
技术标签:
【中文标题】如何在 TypeScript 中表示包含多种类型的二维数组?【英文标题】:How do I represent a two-dimensional array containing multiple types in TypeScript? 【发布时间】:2019-12-31 03:52:33 【问题描述】:我正在学习 TypeScript。
我在学习的时候有一个问题
const arr = [['192.168.0.1', 1234], ['192.168.0.2', 5678], ...];
如何在上述二维数组中包含不同类型? 使用'any'会很好,但我不推荐在官方文档中使用。
【问题讨论】:
你想要一个tuples 的数组,比如Array<[string, number]>
。
Defining array with multiple types in TypeScript的可能重复
【参考方案1】:
您可以在 TypeScript 中使用联合类型。来自documentation:
联合类型描述的值可以是多种类型之一。我们 使用竖线 (|) 分隔每种类型,因此编号 |字符串 | boolean 是值的类型,可以是数字、字符串或 布尔值。
因此,在您的情况下,您可以将数组声明为:
const arr: Array<(string | number)[]> = [['192.168.0.1', 1234], ['192.168.0.2', 5678], ...];
【讨论】:
以上是关于如何在 TypeScript 中表示包含多种类型的二维数组?的主要内容,如果未能解决你的问题,请参考以下文章
typescript中表示同时满足两个或两个以上条件的定义,也就是&符号