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'];
// symbol
let s:symbol = Symbol('s');
// boolean
let isTrue: boolean = true;
// undefined
let u: undefined = undefined;
// null
let 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; // 0 let 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); } // 推断的返回值类型为never function fail():never { return error("Something failed"); } // 返回never的函数必须存在无法达到的终点 function infiniteLoop(): never { while (true) { }