Typescript 元组 (十三)

元组

数组合并了相同类型的对象,而元组(Tuple)合并了不同类型的对象

元组是不能改变的,固定长度

简单的例子

  • 定义一对值分别是 string 和 number 的元组
let tom: [string, number] = ['Tom', 25]

当赋值或访问一个已知索引的元素的时候,会得到正确的类型

let tom: [string, number]

tom[0] = 'Tom'
tom[1] = 25

tom[0].slice(1)
tom[1].toFixed(2)

也可以只赋值其中一项

let tom: [string, number]

tom[0] = 'Tom'

但是当直接对元组类型的变量进行初始化或者赋值的时候,需要提供所有元组类型中指定的项

let tom: [string, number]

tom = ['Tom', 25]

越界的元素

  • 当添加越界的元素时候,他的类型会被限制为元组中每个类型的联合类型
let tom: [string, number]

tom = []

tom.push('male')

tom.push(true)

//报错

文章作者: 雾烟云
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 雾烟云 !
  目录