Ts中类型约束extends

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

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

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

相关推荐
是一碗螺丝粉7 分钟前
5分钟上手LangChain.js:用DeepSeek给你的App加上AI能力
前端·人工智能·langchain
wuhen_n8 分钟前
双端 Diff 算法详解
前端·javascript·vue.js
UrbanJazzerati8 分钟前
Vue 3 纯小白快速入门指南
前端·面试
雮尘8 分钟前
手把手带你玩转Android gRPC:一篇搞定原理、配置与客户端开发
android·前端·grpc
光影少年9 分钟前
说说闭包的理解和应用场景?
前端·javascript·掘金·金石计划
是一碗螺丝粉9 分钟前
LangChain 核心组件深度解析:模型与提示词模板
前端·langchain·aigc
狗哥哥10 分钟前
微前端架构下的平台级公共组件资源体系设计
前端·架构
MQliferecord11 分钟前
首屏轮播图使用cdn加载webp图片的代码案例
前端
菜鸟shuai11 分钟前
如何在老项目中使用AI实现智能问答
前端
我是何平13 分钟前
js中,什么是快速排序(Quick Sort)
前端