Ts中类型约束extends

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

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

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

相关推荐
apollo_qwe17 分钟前
前端缓存深度解析:从基础到进阶的实现方式与实践指南
前端
周星星日记25 分钟前
vue中hash模式和history模式的区别
前端·面试
Light6025 分钟前
Vue 高阶优化术:v-bind 与 v-on 的实战妙用与思维跃迁
前端·低代码·vue3·v-bind·组件封装·v-on·ai辅助开发
周星星日记26 分钟前
5.为什么vue中使用query可以保留参数
前端·vue.js
lebornjose26 分钟前
javascript - webgl中绑定(bind)缓冲区的逻辑是什么?
前端·webgl
瘦的可以下饭了31 分钟前
Day05- CSS 标准流、浮动、Flex布局
前端
前端无涯33 分钟前
React中setState后获取更新后值的完整解决方案
前端·react.js
西愚wo33 分钟前
前端开发者必备:在浏览器控制台批量提取HTML表单字段名(Label)
前端
小鸡吃米…1 小时前
Python - 类属性
java·前端·python
前端不太难1 小时前
Navigation State 驱动的页面调试方法论
开发语言·前端·react.js