Ts中类型约束extends

在泛型中,我们可以使用 extends 关键字来约束传入的泛型参数必须符合要求。关于 extends,A extends B 意味着 A 是 B 的子类型,这里我们暂时只需要了解非常简单的判断逻辑,也就是说 A 比 B 的类型更精确,或者说更复杂。具体来说,可以分为以下几类。

😳 更精确,如字面量类型是对应原始类型的子类型 ,即 'wangp' extends string599 extends number 成立。类似的,联合类型子集均为联合类型的子类型 ,即 11 | 21 | 2 | 3 | 4 的子类型。

🐸更复杂,如 { name: string }{} 的子类型,因为在 {} 的基础上增加了额外的类型,基类与派生类(父类与子类)同理。

相关推荐
m0_47119963几秒前
【JavaScript】前端如何处理服务端部分接口加解密
开发语言·前端·javascript
盐焗西兰花8 分钟前
鸿蒙学习实战之路-Web 页面适配最佳实践
前端·学习·harmonyos
离别又见离别18 分钟前
vue使用js渲染组件案例(公用打印组件动态渲染)及静默打印实现
前端·javascript·vue
wyhwust19 分钟前
学技术找工作经验分享--前端
前端
BD_Marathon23 分钟前
【JavaWeb】JS_BOM编程_window对象的常见属性
前端
IT_陈寒24 分钟前
Redis性能提升50%的7个关键配置:从慢查询优化到内存碎片整理实战指南
前端·人工智能·后端
还不秃顶的计科生28 分钟前
wps“文件路径与可点击的超链接“之间的相互转换
前端
黛色正浓37 分钟前
【React】极客园案例实践-编辑文章模块和项目打包
前端·react.js·前端框架
徐同保38 分钟前
n8n项目编译时取消类型检测,提交代码时取消校验
开发语言·前端·javascript
不会kao代码的小王1 小时前
openEuler上Docker部署Kafka消息队列实战
前端·云原生·stable diffusion·eureka