ts类型编写时,可以像es6一样使用模板字符串,使用方式基本一致。
🌰 简单示例
WithAttr 为自定义类型,接受一个泛型K,且K要继承自字符串string。 在接受到的K值添加上 "Attr" 后返回新的类型
1 | type WithAttr<K extends string> = `${K}Attr` |

针对字符串的处理,typescript还提供了对应内置方法
Capitalize首字母大写
1 | type CapitalizeStr = Capitalize<'hello world'> // Hello world |
Uncapitalize首字母小写
1 | type UncapitalizeStr = Uncapitalize<'HELLO WORLD'> // hELLO WORLD |
Lowercase全部转为小写
1 | type LowercaseStr = Lowercase<'HELLO WORLD'> // hello world |
Uppercase全部转大写
1 | type UppercaseStr = Uppercase<'hello world'> // HELLO WORLD |
💡 在模板字符串中使用
1 | type WithAttr<K extends string> = `${Capitalize<K>}Attr` |

💡 在循环中使用
使用 as 关键字可以对获取到键进行重写,将其当做字符串处理即可
1 | type Person = { |
