如何创建一个类型来描述只能包含数字的字符串?
我可以写这样的东西,但是如何描述动态长度字符串的类型而不声明每个长度?
type StringDigit = '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9';
type StringNumber =
| StringDigit
| `${StringDigit}${StringDigit}`
| `${StringDigit}${StringDigit}${StringDigit}`
| `${StringDigit}${StringDigit}${StringDigit}${StringDigit}`
| `${StringDigit}${StringDigit}${StringDigit}${StringDigit}${StringDigit}`;
Run Code Online (Sandbox Code Playgroud)
递归类型不起作用:
type StringDigit = '0' | '1' | '2' | '3' | '4' | '5' | '6';
type StringNumber = StringDigit | `${StringDigit}${StringNumber}` // Error: Type alias 'StringNumber' circularly references itself.
Run Code Online (Sandbox Code Playgroud)