-
在 TypeScript(TS)中,基础数据类型指的是那些不可再分的数据类型。
-
TypeScript 为 JavaScript 添加了可选的静态类型和基于类的面向对象编程。
-
以下是 TypeScript 中定义的一些基础数据类型:
-
布尔类型(Boolean) :
const isShow: boolean = false; -
数字类型(Number) :
- TypeScript 中的所有数字都是浮点数。
- 除了支持十进制和十六进制字面量,TypeScript 还支持 ECMAScript 2015 中引入的二进制和八进制字面量。
const num: number = 13; -
字符串类型(String) :
- 你也可以使用模板字符串,它可以定义多行文本和内嵌表达式。
const str: string = "25"; -
符号类型(Symbol) (ECMAScript 2015 新增):
Symbol是一种独一无二的值,常用于创建对象的私有成员。
const sym: symbol = Symbol(); -
数组类型(Array) :
const list: number[] = [0]; const list: Array<number> = [0]; //或者使用泛型 -
元组类型(Tuple) :
- 元组类型允许表示一个已知元素数量和类型的数组,各元素的类型不必相同。
const x: [string, number] = ["hello", 10]; -
枚举类型(Enum) :
- 默认情况下,枚举的开始值是 0,但你可以手动设置。
enum Color {Red, Green, Blue}; -
任意类型(Any) :
- 在编程阶段还不清楚类型的变量指定一个类型,不希望类型检查器对这些值进行检查时使用。
const notSure: any = 0; -
空值类型(Void) :
void类型的变量只能被赋值为undefined。
function fun(): void { console.log("输出日志"); } -
Null 和 Undefined:
- 默认情况下,
null和undefined是所有类型的子类型。 - 当
tsconfig.ts中compilerOptions.strictNullChecks不为false时,null和undefined只能赋值给它们各自和any类型。
const n: null = null; const u: undefined = void 0; - 默认情况下,
-
Never:
never类型表示的是那些永不存在的值的类型。never类型是任何类型的子类型,也可以赋值给任何类型;然而,没有类型是never的子类型或可以赋值给never类型(除了never本身之外)。
function error(message: string): never { throw new Error(message); }
这些基础类型构成了 TypeScript 类型系统的基石,可以用来定义变量、函数参数和返回值的类型。