- boolean 布尔型
let isDone: boolean = true
- number 数字
- 和js一样所有数字都是浮点数 支持十进制,十六进制,二进制,八进制
let decLiteral: number = 6
let hexLiteral: number = 0xf00d
let binaryLiteral: number = 0b1010
let octalLiteral: number = 0o744
- string 字符串
let str: string = 'string'
let nameStr: string = 'bob'
let age: number = 18
let sentence: string = ` Hello my name is ${nameStr}
I'll be ${age + 1} years old next month`
- Array数组
let listNum: number[] = [1, 2, 3]
let listStr: Array<string> = ['1', '2', '3']
- Tuple元组
let x: [string, number] = ['A', 1]
- enum枚举
enum Color {Red,Green,Blue}
let c: Color = Color.Green
- 默认情况下,从0开始为元素编号。 你也可以手动的指定成员的数值。
enum Color {Red = 1, Green, Blue}
let c: Color = Color.Green;
enum Color {Red = 1, Green = 2, Blue = 4}
let c: Color = Color.Green;
- 枚举类型提供的一个便利是你可以由枚举的值得到它的名字。 例如,我们知道数值为2,但是不确定它映射到Color里的哪个名字,我们可以查找相应的名字
enum Color { Red = 1, Green, Blue }
console.log(Color[2])
- any 给还不清楚类型的变量指定一个类型
- 我们不希望类型检查器对这些值进行检查而是直接让它们通过编译阶段的检查。 那么我们可以使用 any类型来标记这些变量
let notSure: any = 4
notSure = 'matbe a string instead'
notSure = true
- 当你只知道一部分数据的类型时,any类型也是有用的。 比如,你有一个数组,它包含了不同的类型的数据
let list: any[] = [1, true, 'free']
list[1] = 100
- Void 表示没有任何类型
- 当一个函数没有返回值时 通常会见到其返回值类型是 void
function warnUser(): void {
console.log(1)
}
- 声明一个vold类型的变量 只能给他赋予 undefined
let unusable: void = undefined
- Null 和 Undefined
let u: undefined = undefined
let n: null = null
- Never 永不存在的值的类型
- 例如, never类型是那些总是会抛出异常或根本就不会有返回值的函数表达式或箭头函数表达式的返回值类型
function error(message: string): never {
throw new Error(message);
}
function infiniteLoop(): never {
while (true) {
}
}