joh*_*01s 3 javascript arrays tuples typescript
说我有类型
type MyTypeArray = ['', 2, boolean]
Run Code Online (Sandbox Code Playgroud)
2 | boolean
当数组的长度未知时,如何提取类型?
您可以推断除首先之外的所有元素。使用spread tuple
运算符:...
,就像在纯 JavaScript 中一样
type ExtractTail<T extends any[]> = T extends [infer _, ...infer Tail] ? Tail : never
// [2, boolean]
type MyTypeArray = ExtractTail<['', 2, boolean]>
// 2 | boolean
type Union = MyTypeArray[number]
Run Code Online (Sandbox Code Playgroud)