跳到主要内容

TypeScript 数据类型

介绍

TypeScript 是 JavaScript 的超集,它为 JavaScript 添加了静态类型检查。数据类型是 TypeScript 的核心概念之一,它帮助我们定义变量、函数参数和返回值的类型,从而提高代码的可读性和可维护性。

在 TypeScript 中,数据类型可以分为两大类:基本类型复杂类型。基本类型包括 numberstringboolean 等,而复杂类型则包括 objectarraytupleenum 等。

基本数据类型

1. number

number 类型用于表示数字,包括整数和浮点数。

typescript
let age: number = 25;
let price: number = 19.99;

2. string

string 类型用于表示文本数据。

typescript
let name: string = "Alice";
let greeting: string = `Hello, ${name}!`;

3. boolean

boolean 类型用于表示逻辑值,即 truefalse

typescript
let isActive: boolean = true;
let isCompleted: boolean = false;

4. nullundefined

nullundefined 是 TypeScript 中的特殊类型,分别表示“无值”和“未定义”。

typescript
let emptyValue: null = null;
let notDefined: undefined = undefined;
备注

在 TypeScript 中,nullundefined 是所有类型的子类型,这意味着你可以将 nullundefined 赋值给任何类型的变量。

复杂数据类型

1. object

object 类型用于表示非原始类型的值,即除了 numberstringbooleannullundefined 之外的类型。

typescript
let user: object = {
name: "Alice",
age: 25,
};

2. array

array 类型用于表示一组相同类型的元素。

typescript
let numbers: number[] = [1, 2, 3, 4, 5];
let names: string[] = ["Alice", "Bob", "Charlie"];

3. tuple

tuple 类型允许你表示一个已知元素数量和类型的数组,各元素的类型不必相同。

typescript
let userInfo: [string, number] = ["Alice", 25];

4. enum

enum 类型用于定义一组命名的常量。

typescript
enum Color {
Red,
Green,
Blue,
}

let favoriteColor: Color = Color.Green;

实际应用场景

场景 1:用户信息管理

假设我们正在开发一个用户管理系统,需要存储用户的基本信息,如姓名、年龄和是否激活。

typescript
type User = {
name: string;
age: number;
isActive: boolean;
};

let user: User = {
name: "Alice",
age: 25,
isActive: true,
};

场景 2:商品库存管理

在一个电商系统中,我们需要管理商品的库存信息,包括商品名称、价格和库存数量。

typescript
type Product = {
name: string;
price: number;
stock: number;
};

let product: Product = {
name: "Laptop",
price: 999.99,
stock: 10,
};

总结

TypeScript 的数据类型系统为我们提供了强大的工具来定义和约束变量的类型,从而提高代码的可靠性和可维护性。通过掌握基本类型和复杂类型,我们可以更好地构建复杂的应用程序。

附加资源

练习

  1. 定义一个 Person 类型,包含 name(字符串)、age(数字)和 isStudent(布尔值)三个属性。
  2. 创建一个 Person 类型的变量,并为其赋值。
  3. 定义一个 Book 类型,包含 title(字符串)、author(字符串)和 pages(数字)三个属性。
  4. 创建一个 Book 类型的变量,并为其赋值。

通过完成这些练习,你将更深入地理解 TypeScript 的数据类型及其应用。