模式切换
基础类型
TypeScript 包含的数据类型如下(TypeScript 和 JavaScript 没有整数类型):
任意类型(any)
声明为 any 的变量可以赋予任意类型的值。
数字类型(number)
双精度 64 位浮点值。它可以用来表示整数和分数。
typescript
let binaryLiteral: number = 0b1010; // 二进制
let octalLiteral: number = 0o744; // 八进制
let decLiteral: number = 6; // 十进制
let hexLiteral: number = 0xf00d; // 十六进制
字符串类型(string)
一个字符系列,使用单引号(')或双引号(")来表示字符串类型。反引号(`)来定义多行文本和内嵌表达式。
typescript
let name: string = "Zhangsan";
let years: number = 5;
let words: string = `您好,今年是 ${ name } 发布 ${ years + 1} 周年`;
布尔类型(boolean)
表示逻辑值:true 和 false。
typescript
let flag: boolean = true;
数组类型
声明变量为数组。
typescript
// 在元素类型后面加上[]
let arr: number[] = [1, 2];
// 或者使用数组泛型
let arr: Array<number> = [1, 2];
元组
元组类型用来表示已知元素数量和类型的数组,各元素的类型不必相同,对应位置的类型需要相同。
typescript
let x: [string, number];
x = ['Hello', 1]; // 运行正常
x = [1, 'Hello']; // 报错
console.log(x[0]); // 输出 Hello
枚举
枚举类型用于定义数值集合。
typescript
enum Color {Red, Green, Blue};
let c: Color = Color.Blue;
console.log(c); // 输出 2
void
用于标识方法返回值的类型,表示该方法没有返回值。
typescript
function hello(): void {
alert("Hello");
}
null
表示对象值缺失。
undefined
用于初始化变量为一个未定义的值。
never
never 是其它类型(包括 null 和 undefined)的子类型,代表从不会出现的值。