ts新增类型
any类型
void类型 表示没有任何类型 通常一个函数没有返回值时,返回值类型为void
数组类型 :表达类型方式2种
1、数组项类型加上[]
let list1: number[] = [1, 2, 3]
2、数组泛型
let list2: Array = [1, 2, 3]
联合类型:由2个或以上的不同类型组成的类型,表示数据的类型可以时这些类型中的任意一种,多种类型由 | 间隔
示例:
let c1: number | string = 3
c1 = ‘abc’//允许
function toString2(x: number | string) : string {
return x.toString()
}
let arr:(number|string)[] = [1,“1”];
类型别名:自定义类型,当同一个复杂类型被多次使用,可以通过类型别名复用
1、使用type关键字定义类型别名
2、类型别名的名称符合js的标识符命名规范
//类型别名
type StringOrNumber = string | number;
const a: StringOrNumber = 1;
const b: StringOrNumber = 1;
//数组类型别名
type StringArr = string[];
const arr1: StringArr = [“hello”];
元组tuple类型
1、在有些时候,某些数组的个数和每一个元素的类型是固定的,则我们会使用数组的另外一种表达形式元组
2、元组可以确定包含的元素个数和每一个元素的类型(各元素的类型不必相同)
let t1: [string, number] = [‘hello’, 10] // OK
let t1: [string, number] = [10, ‘hello’] // Error
字面量类型
//定义一个字面量类型statusType
type statusType = 0 | 1 | 2;
let loginStatus: statusType = 0;
loginStatus = 4;//error
//给函数的参数定义字面量类型
function printText(where: “left” | “right” | “center”) {}
printText(“center”);
枚举enum类型:为一组数值赋予名字