整数
题目
请完成类型 Integer<T>
,类型 T
继承于 number
,如果 T
是一个整数则返回它,否则返回 never
。
解答
ts
type Integer<T extends string | number> = number extends T
? never
: `${T}` extends `${string}.${string}`
? never
: T;
精选
除了使用模板字符硬解以外,还可以使用 bigint
特性:
ts
type Integer<T extends number> = `${T}` extends `${bigint}` ? T : never;