Jupyter AI

5 基本类型与变量

📅 发表日期: 2024年9月14日

分类: 🟦TypeScript 入门

👁️阅读: --

在上一章,我们通过编写我们的第一个 TypeScript 程序,了解了 TypeScript 的基本概念。现在,让我们深入了解基本数据类型以及如何在 TypeScript 中定义变量。

基本数据类型

TypeScript 提供了多种基本数据类型,以满足不同场景下的需求。以下是常用的基本数据类型:

  1. 布尔类型(Boolean):表示 truefalse 的值。
  2. 数字类型(Number):表示整数和浮点数,所有数字都使用相同的 number 类型。
  3. 字符串类型(String):表示文本数据。
  4. 数组类型(Array):用于存储同一类型的多个值。
  5. 元组类型(Tuple):表示已知数量和类型的数组。
  6. 枚举类型(Enum):用于定义一组命名常量。
  7. 任何类型(Any):可以表示任意类型的值。
  8. 空类型(Void):表示没有任何类型,通常用于函数没有返回值的场景。
  9. 未定义类型(Undefined)空值类型(Null):表示没有值的状态。

我们将逐个介绍这些数据类型,并通过代码示例来展示它们的用法。

1. 布尔类型

let isDone: boolean = false;
console.log(isDone);  // 输出: false

在这个例子中,我们定义了一个名为 isDone 的变量,它的类型是 boolean

2. 数字类型

let decimal: number = 6;
let hex: number = 0xf00d;
let binary: number = 0b1010;
let octal: number = 0o744;

console.log(decimal);  // 输出: 6
console.log(hex);      // 输出: 61453
console.log(binary);   // 输出: 10
console.log(octal);    // 输出: 484

这里我们展示了不同进制的数字,所有这些都是 number 类型。

3. 字符串类型

let color: string = "blue";
color = 'red';
console.log(color);  // 输出: red

在此示例中,我们使用了 string 类型来定义一个变量 color

4. 数组类型

let list: number[] = [1, 2, 3];
let list2: Array<string> = ["apple", "banana", "orange"];

console.log(list);   // 输出: [1, 2, 3]
console.log(list2);  // 输出: ["apple", "banana", "orange"]

我们可以使用数组字面量 number[]Array<元素类型> 来定义数组。

5. 元组类型

let tuple: [string, number];
tuple = ["hello", 10];  // 正确
// tuple = [10, "hello"];  // 错误

console.log(tuple);  // 输出: ["hello", 10]

元组用于存储不同类型的固定数量的元素。在这个示例中,tuple 的类型是一个包含一个 string 和一个 number 的元组。

6. 枚举类型

enum Color {
    Red,
    Green,
    Blue
}

let c: Color = Color.Green;
console.log(c);  // 输出: 1

枚举是一种特殊的数据类型,可以为一组具有相关性的一组值命名。

7. 任何类型

let notSure: any = 4;
notSure = "maybe a string instead";
notSure = false;  // 不同类型都可以被赋值

console.log(notSure);  // 输出: false

any 类型表示可以是任何类型的变量。

8. 空类型

function warnUser(): void {
    console.log("This is my warning message");
}

void 类型常用于函数没有返回值的情况。

9. 未定义与空值类型

let u: undefined = undefined;
let n: null = null;

console.log(u);  // 输出: undefined
console.log(n);  // 输出: null

undefinednull 是各自独立的数据类型,表示缺少值的状态。

定义变量

在 TypeScript 中,可以使用 letconstvar 来定义变量。推荐使用 letconst,因为它们具有块级作用域。

使用 let 定义变量

let x: number = 10;
x = 20;  // 可以修改

使用 const 定义常量

const y: number = 30;
// y = 40;  // 错误:无法重新赋值

使用 var 定义变量

使用 var 定义的变量是函数作用域的,具有更大的作用范围,不鼓励使用。示例如下:

var z: number = 50;
console.log(z);  // 输出: 50

小结

在本章中,我们学习了 TypeScript 中的基本数据类型及其用法,并了解了如何定义变量。掌握这些基础知识是学习 TypeScript 的重要第一步。

在下一章中,我们将探讨如何使用变量来创建更复杂的数据结构,一起期待吧!

🟦TypeScript 入门 (滚动鼠标查看)