Typescript类型体操 - Trim Left
题目
中文
实现 TrimLeft<T>
,它接收确定的字符串类型并返回一个新的字符串,其中新返回的字符串删除了原字符串开头的空白字符串。
例如
type trimed = TrimLeft<' Hello World '> // 应推导出 'Hello World '
English
Implement TrimLeft<T>
which takes an exact string type and returns a new string with the whitespace beginning removed.
For example
type trimed = TrimLeft<' Hello World '> // expected to be 'Hello World '
答案
type TrimLeft<S extends string> = S extends `${' ' | '\n' | '\t'}${infer U}` ? TrimLeft<U> : S;