TypeScript
入门
基本类型和扩展类型
Typescript
与Javascript
共享相同的基本类型,但有一些额外的类型。
- 元组
Tuple
- 枚举
enum
Any
与Void
never
基本类型
// 数字let num: number = 6;let num: number = 0xf00d;// 字符串let name: string = "bob";// 数组,第二种方式是使用数组泛型,Array<元素类型>:let list: number[] = [1, 2, 3];let list: Array<number> = [1, 2, 3];let list: any[] = [1,2,3,'4'];// symbollet s:symbol = Symbol('s');// booleanlet isTrue: boolean = true;// undefinedlet u: undefined = undefined;// nulllet n: null = null;// 定义多种类型let s:string|undefined;
特殊类型
元组
Tuple
元组作为有组织的数组,需要以正确的顺序预定义数据类型。
const tuple: [number, string, string] = [24, "Indrek" , "Lasn"];const arr3:[string, number] = ['12',1];
枚举
enum
enum
类型是对JavaScript
标准数据类型的一个补充。 像C#等其它语言一样,使用枚举类型可以为一组数值赋予友好的名字。enum Flag { success = 0, error = 1}let c: Flag = Flag.success; // 0let d: string = Flag[0]; // success
Any
表示任意类型,慎重使用,用多了就失去使用Ts的意义
用于类型不明确的情况
Void
- 在Typescript中,你必须在函数中定义返回类型
- 我们可以将其返回值定义为void
- 用void定义的函数不能写return
function run():void{ console.log('run')}
never
Never
是永远达不到的值// 返回never的函数必须存在无法达到的终点function error(message: string): never { throw new Error(message);}// 推断的返回值类型为neverfunction fail():never { return error("Something failed");}// 返回never的函数必须存在无法达到的终点function infiniteLoop(): never { while (true) { }