5 基本类型与变量
在上一章,我们通过编写我们的第一个 TypeScript 程序,了解了 TypeScript 的基本概念。现在,让我们深入了解基本数据类型以及如何在 TypeScript 中定义变量。
基本数据类型
TypeScript 提供了多种基本数据类型,以满足不同场景下的需求。以下是常用的基本数据类型:
- 布尔类型(Boolean):表示
true
或false
的值。 - 数字类型(Number):表示整数和浮点数,所有数字都使用相同的
number
类型。 - 字符串类型(String):表示文本数据。
- 数组类型(Array):用于存储同一类型的多个值。
- 元组类型(Tuple):表示已知数量和类型的数组。
- 枚举类型(Enum):用于定义一组命名常量。
- 任何类型(Any):可以表示任意类型的值。
- 空类型(Void):表示没有任何类型,通常用于函数没有返回值的场景。
- 未定义类型(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
undefined
和 null
是各自独立的数据类型,表示缺少值的状态。
定义变量
在 TypeScript 中,可以使用 let
、const
和 var
来定义变量。推荐使用 let
和 const
,因为它们具有块级作用域。
使用 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 的重要第一步。
在下一章中,我们将探讨如何使用变量来创建更复杂的数据结构,一起期待吧!