当前位置:  首页>> 技术小册>> TypeScript入门指南

Typescript是JavaScript的超集,为JavaScript代码提供了类型系统。在Typescript中,数据类型分为原始类型和对象类型两种。


1、原始类型
原始类型包括布尔值、数字、字符串、null、undefined、Symbol等。它们是JavaScript中最基本的数据类型,没有任何方法或属性。在Typescript中,原始类型的变量声明方法与JavaScript一致,例如:

  1. let isDone: boolean = false;
  2. let num: number = 10;
  3. let str: string = 'hello';
  4. let nul: null = null;
  5. let und: undefined = undefined;
  6. let sym: symbol = Symbol('key');

特点

  • 原始类型的值都是不可变的,即不可修改。
  • 原始类型的变量声明后,不允许赋值其它类型的值。

用途
原始类型一般用于存储简单的数据类型,例如布尔值、数字、字符串等。在函数参数和返回值的类型声明中,也经常使用原始类型,例如:

  1. function add(a: number, b: number): number {
  2. return a + b;
  3. }

2、对象类型
对象类型是JavaScript中最复杂的数据类型之一,它包括数组、函数、对象、类等。在Typescript中,对象类型的声明方式与JavaScript有所不同。

数组类型
在Typescript中,声明数组类型可以使用两种方式:

  1. let arr1: number[] = [1, 2, 3];
  2. let arr2: Array<number> = [1, 2, 3];

第一种方式使用方括号声明数组类型,第二种方式使用泛型声明数组类型。其中,泛型是Typescript中常用的语法之一,可以用于声明函数、类等。

函数类型
在Typescript中,声明函数类型的方式与JavaScript有所不同。例如:

  1. function add(a: number, b: number): number {
  2. return a + b;
  3. }
  4. let addFn: (a: number, b: number) => number = add;

上面的代码中,addFn是一个函数类型的变量,它的声明方式与函数声明的方式类似,但是多了一个箭头符号,表示函数的返回值类型。

对象类型
在Typescript中,声明对象类型可以使用以下方式:

  1. let obj1: { name: string, age: number } = { name: 'Tom', age: 18 };
  2. let obj2: object = { name: 'Tom', age: 18 };

第一种方式使用花括号声明对象类型,其中花括号内部包含对象的属性名和属性值的类型声明。第二种方式使用object类型声明对象类型,但是它只能表示任意类型的对象,无法表示具体的属性和属性值类型。

类类型
在Typescript中,声明类类型的方式与JavaScript有所不同。例如:

特点

  • 对象类型的值是可变的,即可以修改对象的属性或方法。
  • 对象类型的变量声明后,可以赋值为任意类型的对象,只要它们具有相同的属性和方法。

用途
对象类型一般用于存储复杂的数据类型,例如数组、对象、类等。在函数参数和返回值的类型声明中,也经常使用对象类型,例如:

  1. interface Person {
  2. name: string;
  3. age: number;
  4. }
  5. function getPersonInfo(person: Person): string {
  6. return `My name is ${person.name}, I'm ${person.age} years old.`;
  7. }

上面的代码中,Person是一个接口类型,它定义了一个包含name和age属性的对象类型。在函数getPersonInfo中,参数person的类型为Person,表示它必须是一个具有name和age属性的对象类型。

小结
本文从概念、特点、用法和代码示例等方面,详细解析了Typescript中的原始类型和对象类型。原始类型包括布尔值、数字、字符串、null、undefined和Symbol等,用于存储简单的数据类型;对象类型包括数组、函数、对象和类等,用于存储复杂的数据类型。在使用Typescript进行编程时,需要充分理解它们的特点和用法,才能更好地编写类型安全、可维护的代码。


该分类下的相关小册推荐: