元组类型
如果需要一个固定大小的不同类型值的集合,我们需要使用元组,元组(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']
]