TypeScript - 基础类型
TypeScript是JavaScript的超集,为JS添加静态类型系统,是现代前端开发的必备技能。
基础 基础类型
| 类型 | 说明 | 关键字 |
|---|---|---|
| 原始类型 | string字符串、number数字(包含bigint)、boolean布尔、undefined未定义、null空值、symbol唯一值。 | string number boolean undefined null symbol |
| 数组类型 | number[]数字数组、Array |
number[] Array ReadonlyArray |
| 元组类型 | [string, number]固定长度和类型的数组、可选元素[string, number?]、剩余元素[string, ...number[]]。 | Tuple 可选元素 |
| 枚举类型 | enum枚举命名常量集、数字枚举、字符串枚举、常量枚举const enum、枚举反向映射。 | enum 数字枚举 字符串枚举 |
| any/unknown/never | any任意类型关闭检查、unknown类型安全的any、never永不返回、void无返回值。 | any unknown never void |
基础 接口与类型别名
| 主题 | 说明 | 关键字 |
|---|---|---|
| 接口定义 | interface定义对象结构、属性类型、可选属性?、只读属性readonly、索引签名[Key: Type]: Value。 | interface 可选属性 readonly 索引签名 |
| 类型别名 | type定义类型别名、可定义任何类型、对象类型、联合类型、交叉类型、元组等。 | type 类型别名 |
| 接口继承 | interface A extends B继承父接口成员、多接口继承A extends B, C、继承与交叉类型对比。 | extends 多继承 |
| 交叉类型 | type C = A & B合并多个类型、所有成员并集、类型冲突时合并规则。 | 交叉类型 & |
进阶 函数类型
| 主题 | 说明 | 关键字 |
|---|---|---|
| 函数类型签名 | (param: Type) => ReturnType函数类型、完整函数声明包含参数和返回值类型。 | 函数类型 => ReturnType |
| 可选参数与默认参数 | 可选参数param?: Type带问号、默认参数param: Type = value、严格模式下可选参数不可省略。 | 可选参数 默认参数 |
| 重载签名 | 函数重载multiple signatures、最后实现签名、编译器根据参数类型选择对应签名。 | 函数重载 Overload |
| this 类型 | 显式this参数、箭头函数this绑定、类方法中的this类型、工具函数this处理。 | this参数 |