不定期更新,建议关注收藏点赞。
目录
- 高频内容大纲
- 六、常用类型特性
- 八、项目实战相关
- 高频面试题
- React 与 TS
高频内容大纲
六、常用类型特性
八、项目实战相关
- 接口定义与后端数据对接
- 类型模块拆分
- 类型推断辅助工具(如
as const, 类型推导提示) - JSON 数据的类型定义
高频面试题
| 比较点 | type | interface |
|---|
| 定义对象 | 可 | 可 |
| 联合/交叉类型 | 可 | ❌ 不支持联合,支持扩展 |
| 声明合并 | ❌ 不支持 | 多次声明自动合并 |
| 继承扩展 | 用&实现交叉 | 用extends |
| 场景推荐 | 更灵活,用于类型组合 | 面向对象风格,适合组件 props |
- keyof 是干嘛的?表示类型 T 的所有属性名组成的 联合类型
typeUser={id:number;name:string};typeKeys=keyofUser;// "id" | "name"
- Pick vs Omit 用法?
Pick 选出指定字段;Omit 排除指定字段。
typeUser={id:number;name:string;age:number};typeUserInfo=Pick<User,'name'|'age'>;// => { name: string; age: number }typeUserWithoutId=Omit<User,'id'>;// => { name: string; age: number
constel=document.getElementById("app");// 写法一:尖括号(❌ JSX 中不能用)constdiv1=<HTMLDivElement>el;// 写法二:`as` 语法(✅ 推荐)constdiv2=elasHTMLDivElement;
| 对比点 | any | unknown |
|---|
| 安全性 | ❌ 不安全,跳过类型检查 | ✅ 安全,使用前需做类型检查 |
| 赋值限制 | 可 |