如何在typescript中按特定顺序限制数组的类型,而不是定义范例。
这意味着,在ts中,我们只声明一个数组定义,如:
const arr:Array<any> = []
我想在定义数组中获取特定顺序,例如:
const arr = ['string', 0, ...];
值只能是位置0的字符串tyoe,并且只能是位置1的数字类型...
感谢
答案 0 :(得分:1)
如果您想将大小限制为2个元素,可以使用tuple
来实现此目的const myTuple: [string, number] = ['test', 3]
或将元组类型定义提取为类型
type myTupleType = [string, number]
const myTuple2: myTupleType = ['test', 3]
答案 1 :(得分:0)
可以使用交集类型:
type OrderedArray<T> = Array<T> & {
0?: string;
1?: number;
}
const arr: OrderedArray<any> = ['string', 0, ...];