- 布尔类型 true or false 当赋值其他类型如1 2 3 会报错,示例如下
let isDone: boolean = true
- number 类型
let decLiteral: number = 20
- 字符串 类型
let name: String = '小明'
- 数组类型 number类型
let list: number[] = [1, 2, 3]
// 数组泛型
let list: Array<number> = [1,2,3]
- 元组类型
// 一个长度为2的元组第一个值为字符串,第二个为number
let x: [string, number]
// 正确赋值
x = ['name', 10]
// 错误赋值
x = [10, 'name']
元组可以直接访问目标元素的方法例如访问第一个元素可以获取到字符串的方法
- 枚举类型
enum Color {
Red,
Green,
Blue
}
let c: Color = Color.Green
// 反查
enum Color {
Red = 1,
Green,
Blue
}
// 例如我们知道需要的name在第二项是一个字符串但是不知道是什么
let colorName: String= Color[2]
console.log(colorName) // 打印的值为Green
- any类型 不做语法检查
// 不做语法检查定义一个any类型的变量初始值为number 可以修改赋值为其他类型的值
let notSure:any = 1
notSure = 'name'
notSure = false
// any 在需要的时候再用建议不要滥用,在typescript里还是需要明确的类型检查
let list: any[] = [1, 'name', true]
- void类型 意思是不需要类型 通常在函数用到
function warn(): void {
console.log('this is void')
}
- null 和 undefinend 类型
let n:null = null
let u:undefinend = undefinend
- never 类型 通常用在函数没有返回值的类型
function error(msg: string):never {
throw new Error(msg)
}
function fail() {
return error('error')
}
- object 类型
declare function create(o: object | null): void
create(o: {prop: 0})
create(o: null)
网友评论