元组类型

如果需要一个固定大小的不同类型值的集合,我们需要使用元组,元组(Tuple)是固定数量的不同类型的元素的组合。(元组就是数组的变种)

const arr: [number, string] = [1, 'mk']
const arr2: readonly [number, string, boolean, undefined] = [1, 'mk', true, undefined]

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

元组类型还可以支持自定义名称和变为可选的

const a: [x: number, y?: number] = [1]

越界元素

const arr: [number, string] = [1, 'mk']

arr.push(true) // error

对于越界的元素他的类型被限制为 联合类型(就是你在元组中定义的类型)

应用场景 例如定义excel返回的数据

const excel: [string, string, number, string][] = [
    ['name', 'age', 18, 'sex'],
    ['name', 'age', 18, 'sex'],
    ['name', 'age', 18, 'sex'],
    ['name', 'age', 18, 'sex'],
    ['name', 'age', 18, 'sex'],
    ['name', 'age', 18, 'sex']
]
贡献者: mankueng