Ts中类型约束extends

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

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

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

相关推荐
梦想的颜色4 分钟前
一天一个SKILL——前端最佳自动化测试 webapp-testing
前端·web app
SoaringHeart29 分钟前
Flutter进阶:放弃 MediaQuery.of(context) 使用 NScreenManager
前端·flutter
openKaka_1 小时前
从 scheduleUpdateOnFiber 到 Root 微任务调度:React 如何把更新交给调度系统
开发语言·前端·javascript
CoovallyAIHub1 小时前
铁路环境障碍物检测新框架:YOLOv11+MiDaS+LiDAR 深度融合,距离估计MAE低至0.63米
前端
C澒1 小时前
AI CR:前端团队代码审查规范及高频坑汇总
前端·ai·code review
盏灯1 小时前
以前有一个同事说:最讨厌下班提需求又没电脑在身边...
前端·后端·面试
LIO1 小时前
一文读懂 Vue 3:核心特性、组合式 API 与最佳实践
前端·vue.js
LIO1 小时前
前端响应式通用 CSS(Flex 为主,含主色调)
前端·css
前进的李工1 小时前
智能Agent实战指南:记忆组件嵌入技巧(记忆)
开发语言·前端·javascript·python·langchain·agent
西洼工作室1 小时前
B站登录流程全解析:RSA+极验验证
前端·python·极验