TS知识点整理
- 发布日期
- 2026年5月19日星期二
- 阅读时间
- 3 分钟
- 浏览量
- 155
- 喜欢
- 2
一、TS的诞生:解决JS弱类型的痛点
JavaScript是典型的弱类型语言,无需提前声明变量类型,运行时才会做类型推导。
// 示例:JS中无类型约束的相加函数function add(a, b) { return a + b;}add(1, '2'); // 结果是"12",而非预期的3就像上面的代码,原本用于数字相加的函数,传入字符串后得到非预期结果,而这类问题在代码运行前无法被发现。
TypeScript作为JS的超集,核心是强类型约束:定义变量/函数时必须声明类型,提前规避因类型不符导致的Bug,同时降低团队间的沟通成本——使用者无需反复确认“这个函数该传什么类型的参数”。
二、TS基础类型:给变量“贴标签”
TS兼容JS所有原生类型,同时扩展了部分专属类型,核心分类如下:
1. 基础原始类型
与JS一致,声明时需显式指定类型:
// 布尔型let isDone: boolean = false;// 数字型(包含整数、浮点数、NaN等)let count: number = 123;// 字符串型let str: string = 'hello';// 符号型const sym: symbol = Symbol();// 未定义/空值(是所有类型的子类型)let u: undefined = undefined;let n: null = null;2. 数组与元组
- 普通数组:只能存放同类型数据,两种声明方式:
// 方式1:类型[]const list: number[] = [1, 2, 3];// 方式2:泛型写法(后文详解)let arr: Array<number> = [1, 2, 3];// 联合类型数组(存放多种类型)let mixArr: Array<number | string> = [1, 2, '3'];- 元组(Tuple):特殊数组,需按顺序指定成员类型,长度固定:
喜欢这篇文稿吗
0 条评论 · 0 条回复
暂无评论