问题
实现一个类型版本的 Array.shift
type Result = Shift<[3, 2, 1]> // [2, 1]
解答
type Shift<T> = T extends [infer _, ...infer Rest] ? Rest : never
拆分
- 利用
infer
占位返回
2022-04-13 09
实现一个类型版本的 Array.shift
type Result = Shift<[3, 2, 1]> // [2, 1]
type Shift<T> = T extends [infer _, ...infer Rest] ? Rest : never
infer
占位返回