ts类型
声明变量如果不指定类型,则TS解析器会自动判断变量类型为any
---unknown类型
let e:known;
e=10;
e="hello";
e=true;
let s:string;
s=e;//则会报错,unknown类型的值不能赋给固定类型的变量
//any类型则可以赋值给任意值;
处理方式如下:
if(typeof e === 'string') {
s=e;
}
或 类型断言,用来告诉解析器变量的实际类型
/**
- 语法:
- 变量 as 类型;
- <类型>变量
*/
s=e as string;
s=<string>e;
---void表示空,以函数为例,就表示没有返回值的函数
function ():void {
}
---never表示永远不会返回值,如函数只报错
function () {
throw new Error('报错了');
}
---object/function
---array
//表示字符串数组;
let a:string[];
a = ['a','b','c'];
let f:number[];//表示数值类型数组
等同于let g:Array<number>
---tuple元祖类型
//定义一种类型后,按照类型定义数组,如:固定长度的数组
let h: [string,string]
h = ['22','hello'];
---enum枚举类型
`enum Gender{
Male: 0,
Female: 1
}
let i:{name:string,gender:Gender};
i={
name:'wang',
gender:Gender.Male
};`
特殊表达方式
//& 表示同时;j满足name和age同时满足条件类型
let j: {name: string } & {age: number};
j={name:'hua',age:12};
类型别名
type myType = string;
let a:myType;
type myNumber = 1 | 2 | 3 | 4;
let b:myNumber;
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。