TypeScript 学习笔记之基本类型

在 TypeScript 中一共有 7 种基本类型。

1、boolean


var isDone: boolean = false;

2、number

代表 JavaScript 中的数字。在 JavaScript 中,无论是“整数”还是“浮点数”,都是以双精度浮点类型存储的。


var height: number = 6;

3、string

代表字符串。跟 JavaScript 一样,可以使用一对双引号(")或一对单引号(')来表示字符串。


var name: string = "bob";

name = 'smith';

4、array

TypeScript 中有两种数组声明方法。

①使用“[]”来声明:


var list: number[] = [1, 2, 3];

②使用数组类型来声明:


var list: Array<number> = [1, 2, 3];

两种声明方式都可以使用,效果并不会有区别。但建议代码中应尽量只使用其中一种,以保持代码风格统一。

5、enum

枚举类型是 TypeScript 中新添加的,而 JavaScript 中是没有这个类型的。


enum Color {

    Red,

    Green,

    Blue

};

var c: Color = Color.Green;

跟 C# 一样,如果不声明第一项的值,那么上面 Red 的值就是 0,然后每一项都增加一,即 Green 是 1,Blue 是 2。


enum Color {

    Red = 1,

    Green,

    Blue

};

var c: Color = Color.Green;

所以此时 Red 的值为 1,Green 为 2,Blue 为 3。

当然也可以为每一项都指定一个值。


enum Color {

    Red = 1,

    Green = 2,

    Blue = 4

};

var c: Color = Color.Green;

另外枚举类型还有一个比较特殊的功能,假如我们有一个数值,但是我们不知道枚举类型中是否有定义,可以用以下方式来获取:


enum Color {

    Red = 1,

    Green,

    Blue

};

var colorName: string = Color[2];

alert(colorName);

colorName = Color[4];

alert(colorName);

那么将会输出 Green 和 undefined。因为 Green 的值是 2,而没有一个枚举定义的值是 4,所以返回 undefined。

6、any

和 JavaScript 中变量的默认类型一样,指代是动态的,能够赋予任意类型。例如:


var notSure: any = 4;

notSure = "maybe a string instead";

notSure = false; // okay, definitely a boolean

定义为 any 后,将失去语法感知的功能,就相当于写 JavaScript 一样。

值得一提的是,any 可以配合数组来使用:


var list: any[] = [1, true, "free"];

list[1] = 100;

7、void

这个类型仅能在函数中使用,可以将函数的返回类型指定为 void,表示该函数不返回任何值。


function warnUser(): void {

    alert("This is my warning message");

}

以上所述就是本文的全部内容了,希望大家能够喜欢。