Skip to content

TypeScript数据类型

TS数据类型分为基础、引用 、特殊类型

1、基础数据类型(7种)

number
作用:表示所有数字,整数、小数、负数、二进制、十六进制都算。
使用场景:年龄、价格、数量、序号、数学计算、分数等。
string
作用:表示文本字符串。
使用场景:姓名、标题、描述、消息、路径、标签等一切文字内容。
boolean
作用:只有 true /false 两个值。
使用场景:开关状态、是否显示、条件判断、是否完成等。
null
作用:表示 “空”“不存在”“空引用”。
使用场景:主动清空对象、表示没有值的状态。
undefined
作用:表示变量已声明但未赋值。
使用场景:未初始化的变量、未传的参数、不存在的属性。
symbol
作用:生成独一无二的值。
使用场景:给对象创建唯一属性名,避免冲突。
bigint
作用:表示超大整数,超出 number 范围的数字。
使用场景:超大数值计算、高精度 ID、大数据场景。

2、引用类型(4种)

array 数组
作用:存储一组相同类型的有序数据。
使用场景:列表、菜单、集合、多条数据记录。
bigtuple 元组
作用:固定长度、固定类型的数组。
使用场景:接口返回固定结构数据、坐标、固定参数组合。
object 对象

作用:存储键值对形式的复杂数据。
使用场景:用户信息、配置项、表单数据、业务实体。
enum 枚举

作用:定义一组有名字的常量,方便阅读和维护。
使用场景:状态码、订单状态、角色类型、固定选项集合。

3、专属特殊类型(4种)

any
作用:关闭类型检查,可赋值任何类型。
使用场景:临时兼容旧 JS 代码、不确定类型且不想做校验时(尽量少用)。
unknown
作用:安全的未知类型,必须先判断类型才能使用。
使用场景:类型不确定但需要保证类型安全(推荐替代 any)。
void
作用:表示函数没有返回值。
使用场景:无返回内容的事件函数、操作函数。
never
作用:表示永远不会有结果、永远执行不到终点。
使用场景:抛出错误的函数、死循环函数、类型穷尽检查。

超简记忆口诀
简单值 → 用 原始类型
一组数据 → 用 数组 / 元组
复杂实体 → 用 对象
固定选项 → 用 枚举
类型不确定 → 优先 unknown,不得已用 any
函数无返回 → void
函数永不返回 → never
总结
TypeScript 类型 = JS 7 种原始类型 + 4 种复杂结构类型 + 4 种 TS 特殊类型。
日常开发 90% 都在使用:number、string、boolean、array、object、unknown、void。

基于 VitePress 的本地知识库