文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
从原始类型开始
首先从原始类型、对象类型和它们对应的字面量类型开始。
type Result1 = 'wangxiaobai' extends string ? 1 : 2; // 1
type Result2 = 1 extends number ? 1 : 2; // 1
type Result3 = true extends boolean ? 1 : 2; // 1
type Result4 = { name: string } extends object ? 1 : 2; // 1
type Result5 = { name: 'wangxiaobai' } extends object ? 1 : 2; // 1
type Result6 = [] extends object ? 1 : 2; // 1
一个基础类型和它们对应的字面量类型必定存在父子类型关系。
object 代表着所有非原始类型的类型,即数组、对象与函数类型,所以这里 Result6 成立的原因即是 [] 这个字面量类型也可以被认为是 object 的字面量类型。
结论简记为,字面量类型 < 对应的原始类型。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论