我制作了一个实用程序类型来添加两个数字类型
type createArray<Len, Ele, Arr extends Ele[] = []> = Arr['length'] extends Len ? Arr : createArray<Len, Ele, [Ele, ...Arr]>
type Add<A extends number, B extends number> = [...createArray<A, 1>, ...createArray<B, 1>]['length']
Run Code Online (Sandbox Code Playgroud)
这样就Add<1,2>可以得到3数字类型。然而我正在努力实现Minus实用程序类型来实现minus计算
理想情况下Minus<3,1>会给你2。
我看到过有关将字符串文字类型转换为数字类型的问题(TypeScript:有没有办法将字符串文字类型转换为数字类型?),但反之则不然。有没有办法定义一个类型,type NumberToString<N extends number>例如NumberToString<42>是42?
这样做的目的是提供一个返回类型Object.keys(如果我真的非常确定没有额外的属性)。
typescript ×2