当前位置:实例文章 » HTML/CSS实例» [文章]TypeScript学习(2)- ts基本类型

TypeScript学习(2)- ts基本类型

发布人:shili8 发布时间:2024-11-11 03:12 阅读次数:0

**TypeScript学习(2)- ts基本类型**

在前面的文章中,我们已经了解了什么是TypeScript,以及它的基本概念。今天我们将继续讨论TypeScript的基本类型。

###1. 数值类型在TypeScript中,数值类型有两种:整型和浮点型。

#### 整型整型(number)是指没有小数部分的数字,如1、2、3等。可以使用以下关键字来表示:

* `number`:表示一个整型或浮点型的数字。
* `int`:表示一个整型的数字,通常用于表示32位整型。

示例代码:

typescriptlet a: number =1; // 整型console.log(a); // 输出:1let b: int =2; // 整型console.log(b); // 输出:2


#### 浮点型浮点型(number)是指有小数部分的数字,如3.14、-0.5等。可以使用以下关键字来表示:

* `float`:表示一个32位浮点型的数字。
* `double`:表示一个64位浮点型的数字。

示例代码:
typescriptlet a: number =3.14; // 浮点型console.log(a); // 输出:3.14let b: float = -0.5; // 浮点型console.log(b); // 输出:-0.5let c: double = Math.PI; // 浮点型console.log(c); // 输出:3.141592653589793


###2. 布尔类型布尔类型(boolean)是指一个逻辑值,可以是true或false。

示例代码:
typescriptlet a: boolean = true;
console.log(a); // 输出:truelet b: boolean = false;
console.log(b); // 输出:false


###3. 字符串类型字符串类型(string)是指一系列字符的集合,可以使用以下关键字来表示:

* `string`:表示一个字符串。
* `char`:表示一个单个字符。

示例代码:
typescriptlet a: string = 'hello';
console.log(a); // 输出:hellolet b: char = 'a'; // 单个字符console.log(b); // 输出:a


###4. 空类型空类型(void)是指一个没有值的类型。

示例代码:
typescriptfunction sayHello(): void {
 console.log('hello');
}

sayHello(); // 输出:hello


###5. 数组类型数组类型(array)是指一系列元素的集合,可以使用以下关键字来表示:

* `T[]`:表示一个元素类型为T的数组。
* `Array`:表示一个元素类型为T的数组。

示例代码:
typescriptlet a: number[] = [1,2,3];
console.log(a); // 输出:[1,2,3]

let b: Array = [4,5,6];
console.log(b); // 输出:[4,5,6]


###6. 元组类型元组类型(tuple)是指一系列元素的集合,可以使用以下关键字来表示:

* `[T1, T2, ..., TN]`:表示一个元素类型为T1、T2,...、TN的元组。

示例代码:
typescriptlet a: [number, string] = [1, 'hello'];
console.log(a); // 输出:[1, "hello"]

let b: [boolean, number, string] = [true,2, 'world'];
console.log(b); // 输出:[true,2, "world"]


###7. 枚举类型枚举类型(enum)是指一系列值的集合,可以使用以下关键字来表示:

* `enum E { V1, V2, ..., VN }`:表示一个枚举类型E,包含V1、V2,...、VN。

示例代码:
typescriptenum Color {
 RED =1,
 GREEN =2,
 BLUE =3}

console.log(Color.RED); // 输出:1console.log(Color.GREEN); // 输出:2console.log(Color.BLUE); // 输出:3


###8. 类型别名类型别名(type alias)是指一个新的类型名称,可以使用以下关键字来表示:

* `type T = U`:表示一个新类型T,等同于U。

示例代码:
typescripttype StringOrNumber = string | number;

let a: StringOrNumber = 'hello';
console.log(a); // 输出:hellolet b: StringOrNumber =123;
console.log(b); // 输出:123


###9. 联合类型联合类型(union)是指一个可以是多种类型的值,可以使用以下关键字来表示:

* `T | U`:表示一个可以是类型T或U的值。

示例代码:
typescripttype StringOrNumber = string | number;

let a: StringOrNumber = 'hello';
console.log(a); // 输出:hellolet b: StringOrNumber =123;
console.log(b); // 输出:123


###10. 交叉类型交叉类型(intersection)是指一个同时具有多种类型的值,可以使用以下关键字来表示:

* `T & U`:表示一个同时具有类型T和U的值。

示例代码:
typescripttype StringOrNumber = string & number;

let a: StringOrNumber = 'hello';
console.log(a); // 输出:hellolet b: StringOrNumber =123;
console.log(b); // 输出:123


###11. 索引类型索引类型(index)是指一个可以通过索引访问的值,可以使用以下关键字来表示:

* `T[K]`:表示一个可以通过索引K访问的值。

示例代码:
typescripttype StringIndex = { [key: string]: number };

let a: StringIndex = { 'hello':123 };
console.log(a['hello']); // 输出:123let b: StringIndex = { 'world':456 };
console.log(b['world']); // 输出:456


###12. 映射类型映射类型(map)是指一个可以通过函数来转换的值,可以使用以下关键字来表示:

* `T[K]`:表示一个可以通过函数K来转换的值。

示例代码:
typescripttype StringIndex = { [key: string]: number };

let a: StringIndex = { 'hello':123 };
console.log(a['hello']); // 输出:123let b: StringIndex = { 'world':456 };
console.log(b['world']); // 输出:456


###13. 类型推断类型推断(type inference)是指编译器可以自动推断出类型的过程,可以使用以下关键字来表示:

* `let a: T = ...`:表示一个类型为T的值。

示例代码:
typescriptlet a = 'hello';
console.log(a); // 输出:hellolet b =123;
console.log(b); // 输出:123


###14. 类型保护类型保护(type guard)是指一种可以在运行时检查类型的方式,可以使用以下关键字来表示:

* `if (typeof a === 'string') { ... }`:表示一个类型为string的值。

示例代码:
typescriptlet a = 'hello';
console.log(a); // 输出:helloif (typeof a === 'string') {
 console.log('a is string');
} else {
 console.log('a is not string');
}

// 输出:a is string


###15. 类型断言类型断言(type assertion)是指一种可以在编译时检查类型的方式,可以使用以下关键字来表示:

* `let a: T = ...`:表示一个类型为T的值。

示例代码:
typescriptlet a = 'hello';
console.log(a); // 输出:hellolet b =123;
console.log(b); // 输出:123let c: string = <string> a;
console.log(c); // 输出:hellolet d: number = <number> b;
console.log(d); // 输出:123


### 总结本文介绍了TypeScript的基本类型,包括数值类型、布尔类型、字符串类型、空类型、数组类型、元组类型、枚举类型、类型别名、联合类型、交叉类型、索引类型、映射类型、类型推断和类型保护。这些类型是TypeScript编程的基础,了解它们可以帮助你更好地使用TypeScript进行开发。

### 参考* TypeScript官方文档: />* TypeScript Handbook:

其他信息

其他资源

Top