一、类型注解和类型推断
1.类型注解
开发者告诉编译器数据类型
(1)给元数据添加类型注解,声明变量时 跟上’ : ‘ 号
let num: number = 55;
let str: string = '123';
let hasOwnProperty: boolean = true;
let undefinedVal: undefined = undefined;
let nullVal: null = null;
// 可以使用内置对象类型 进行类型注解
let date: Date = new Date()
(2)给对象类型添加注解
// 对象
let obj:{name: string; age:number} = {
name: 'Finn',
age: 26
}
// 数组
// 第一种,元素类型后面加上[]
let arr: number[] = [666, 123]
// 第二种,使用数组泛型 Array<元素类型>
let arr: Array<string> = ['123','567']
// 元组,表示元素数量和类型已知的数组类型 [元素类型,元素类型]
let arr: [number, string] = [123,'123']
// 函数 ,定义参数类型与返回值
cosnt foo = (num: number)=> number = (num: number) =>{
return 123
}
// 类, 值的类型为某个类的实例
class Super{
}
let subInstance: Super ={
}
(3)定义多种类型 — 联合类型
let value: number | string = 5;
value = '5'
2.类型推断
(1)编译器自己推断数据额类型
浏览器会根据变量初始值推断变量类型