TypeScript 是一种强类型编程语言,它建立在 JavaScript 的基础上,为开发者提供了更丰富的类型系统和更严格的编译时检查。TypeScript 的基础类型主要包括以下几种:
-  布尔类型(Boolean): - 表示逻辑值,可以是 true或false。
- 示例:let isDone: boolean = false;
 
- 表示逻辑值,可以是 
-  数字类型(Number): - 表示双精度 64 位浮点类型,也可以处理整数。
- 示例:let age: number = 25;
 
-  字符串类型(String): - 表示文本数据,可以是单引号、双引号或模板字符串。
- 示例:let name: string = "Alice";
 
-  数组类型(Array): - 表示有序的元素集合,每个元素可以是任意类型。
- TypeScript 提供了两种定义数组的方式: - 类型后跟 [],如let numbers: number[] = [1, 2, 3];
- 使用泛型 Array<T>,如let numbers: Array<number> = [1, 2, 3];
 
- 类型后跟 
 
-  元组类型(Tuple): - 表示已知元素数量和类型的数组,但各元素类型可以不同。
- 示例:let person: [string, number] = ["Alice", 25];
 
-  枚举类型(Enum): - 为一组数值赋予友好的名字,增加代码的可读性和可维护性。
- 示例:enum Color {Red, Green, Blue}; let c: Color = Color.Green;
 
-  任意类型(Any): - 表示可以是任何类型,通常用于那些我们还不清楚类型的变量。
- 示例:let notSure: any = 4; notSure = "maybe a string instead";
 
-  空类型(Void): - 表示没有任何类型,通常用于没有返回值的函数。
- 示例:function warnUser(): void { console.log("This is my warning message"); }
 
-  Null 和 Undefined: - null表示对象值缺失,- undefined用于初始化变量为一个未定义的值。
- TypeScript 中,null和undefined各有自己的类型。
 
-  Never 类型: - 表示的是那些永不存在的值的类型。例如,总是会抛出异常或根本就不会有返回值的函数表达式的返回值类型。
- 示例:function error(message: string): never { throw new Error(message); }
 
-  对象类型(Object): - 表示非原始类型,即除了 number、string、boolean、symbol、null或undefined之外的类型。
- 示例:let person: object = { name: "Alice", age: 25 };
 
- 表示非原始类型,即除了 
-  未知类型(Unknown): - 表示未知类型,类似于 any类型,但更加安全。使用unknown类型的变量时,需要进行类型检查或类型断言。
- 示例:let value: unknown = "Hello"; if (typeof value === "string") { console.log(value.toUpperCase()); }
 
- 表示未知类型,类似于 
-  Symbol: - 表示唯一的标识符,通常用作对象属性的键。
- 示例:let id: symbol = Symbol("id"); let obj = { [id]: "12345" };
 
-  BigInt: - 表示任意精度的整数,可以处理超出 number类型表示范围的整数。
- 示例:let bigNumber: bigint = 9007199254740991n;
 
- 表示任意精度的整数,可以处理超出 
这些基础类型使得 TypeScript 能够为变量、函数参数和函数返回值等提供明确的类型注解,从而增强代码的可读性、可维护性和安全性。