Uppercase

把每个字符转为大写形式:

Lowercase

把每个字符转为小写形式:

Capitalize

把字符串的第一个字符转为大写形式

Uncapitalize

把字符串的第一个字符转换为小写形式:

Extract

交集操作

  1. // 内置工具:交集
  2. type Extract<T, U> = T extends U ? T : never;
  3. type type1 = 'name'|'age'
  4. type type2 = 'name'|'address'|'sex'
  5. // 结果:'name'
  6. type test = Extract<type1, type2>
  7. // 推理步骤
  8. 'name'|'age' extends 'name'|'address'|'sex' ? 'name'|'age' : never
  9. => ('name' extends 'name'|'address'|'sex' ? 'name' : never) |
  10. ('age' extends 'name'|'address'|'sex' ? 'age' : never)
  11. => 'name' | never
  12. => 'name'
  13. 作者:汪图南
  14. 链接:https://juejin.cn/post/6980158674681462820
  15. 来源:稀土掘金
  16. 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

Required(必填)和Partial(可填)

Required是用来将所有字段变成必填的,而Partial所做的事情和它相反,它是用来将所有字段变成可填的。

Record(构造)

Record的作用有点像JavaScript中的map方法,它是用来将K的每一个键(k)指定为T类型,这样由多个k/T组合成了一个新的类型。

Pick(选取)

Pick的作用是从指定的类型中选取指定的字段组成一个新的类型。

Exclude(排除)

Exclude的作用是从T中移除那些存在于U中的类型,既:取差集。

Omit(剔除)

Omit所做的事情和Pick相反,Omit指的是从指定的T类型中移除指定的字段,剩下的字段组成一个新类型。