Ts中类型约束extends

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

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

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

相关推荐
haluhalu.7 小时前
深入理解 AI Agent(1.2):Harness 工程——模型之外的竞争力
前端·数据结构·人工智能·python·langchain·个人开发
data analyse 4567 小时前
服务端统计时区切换的日期归并
大数据·前端·数据库·人工智能·数据分析
misty youth7 小时前
前端知识速查
前端·react.js·web
雪芽蓝域zzs7 小时前
从零搭建【pnpm+Vue3+TS+Setup+VueRouter4+Pinia+Axios+ElementPlus (unplugin 按需)】仿若依后台
前端·vue.js
燕落南枝7 小时前
HTML 列表标签详解:有序列表、无序列表与描述列表
前端·html
派小心.8 小时前
DAU和MAU怎么计算?先确定活跃事件、用户键和统计窗口
大数据·服务器·前端·人工智能·数据分析
代码猎人8 小时前
前端怎么配合后端完成bug修复
前端
叫我铁汁儿吧8 小时前
JS作用域
前端·面试
定栓8 小时前
Webpack迁到Vite第七节(四):全家桶移除 — 保留项、脚本与数据收尾
前端·webpack·node.js
代码猎人8 小时前
前端怎么优化首屏加载速度
前端