Ts中类型约束extends

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

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

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

相关推荐
zhuà!17 分钟前
腾讯地图TMap标记反显,新增标记
前端·javascript·vue.js
未知原色19 分钟前
web worker使用总结(包含多个worker)
前端·javascript·react.js·架构·node.js
ttod_qzstudio30 分钟前
CSS改变图片颜色方法介绍
前端·css
curdcv_po1 小时前
我接入了微信小说小程序官方阅读器
前端·微信小程序
程序员鱼皮1 小时前
什么是 RESTful API?凭什么能流行 20 多年?
前端·后端·程序员
www_stdio1 小时前
让大语言模型拥有“记忆”:多轮对话与 LangChain 实践指南
前端·langchain·llm
inferno1 小时前
JavaScript 基础
开发语言·前端·javascript
cindershade1 小时前
Intersection Observer 的实战方案
前端
青莲8431 小时前
Kotlin Flow 深度探索与实践指南——中部:实战与应用篇
android·前端
cindershade1 小时前
事件委托(Event Delegation)的原理
前端