TypeScript类型体操题目4:实现一个TupleM2N类型,入参两个个number M,N,返回从[M, N + M)的的元组

192 阅读1分钟

TypeScript类型体操题目3:实现一个Tuple2N类型,入参一个number N,返回从1-N的的元组 - 掘金 (juejin.cn)

上一期的答案

type Tuple2N<T extends number, U extends number[] = []> =
    U['length'] extends T
    ? U extends [0, ... infer R ] ? [...R, T] : never
    : Tuple2N<T, [...U, U['length']]>

解析
这里主要用到infer 来推断类型


今日题目:实现一个TupleM2N类型,入参两个个number M,N,返回从[M, N + M)的的元组

预期

type A = TupleM2N<1,1> // [1]
type B = TupleM2N<2,2> // [2,3]
type C = TupleM2N<3,9> // [9,10,11]

答案明天见

原文地址