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