TypeScript 基本结构
一个 TypeScript 程序可以由以下几个部分组成。理解这些基本结构有助于我们组织和编写更清晰、更模块化的代码。
1. 模块 (Modules)
在 TypeScript 中,每个包含顶级 import 或 export 的文件都被视为一个模块。模块有自己的作用域,模块内部的变量、函数、类等在外部是不可见的,除非你明确地使用 export 导出它们。
其他文件可以使用 import 语句来导入一个模块中导出的内容。
math.ts (模块)
typescript
// 导出一个常量
export const PI = 3.14;
// 导出一个函数
export function add(x: number, y: number): number {
return x + y;
}app.ts (另一个模块)
typescript
// 从 math.ts 模块导入 PI 和 add
import { PI, add } from './math';
console.log(PI); // 3.14
console.log(add(5, 3)); // 8模块化是构建大型应用的基础,它有助于代码的组织、复用和依赖管理。
2. 函数 (Functions)
函数是执行特定任务的代码块。TypeScript 中的函数可以有参数和返回值,并且可以为它们指定类型。
typescript
// 一个简单的函数,带有类型注解
function greet(name: string): string {
return `Hello, ${name}`;
}
let message = greet("TypeScript");
console.log(message);3. 类 (Classes)
类是创建对象的蓝图。它封装了数据(属性)和操作数据的方法。
typescript
class Greeter {
// 属性
greeting: string;
// 构造函数
constructor(message: string) {
this.greeting = message;
}
// 方法
greet() {
return "Hello, " + this.greeting;
}
}
// 使用类创建对象实例
let greeter = new Greeter("world");
console.log(greeter.greet());4. 接口 (Interfaces)
接口是 TypeScript 中一个强大的特性,用于定义对象的“契约”或“形状”。它只包含属性和方法的声明,不包含实现。
typescript
// 定义一个接口
interface Person {
firstName: string;
lastName: string;
}
// 函数参数使用接口作为类型
function welcome(person: Person) {
return `Hello, ${person.firstName} ${person.lastName}`;
}
let user = { firstName: "Jane", lastName: "User" };
console.log(welcome(user));5. 变量和语句
程序的核心是由变量和语句构成的。
- 变量 (Variables): 用于存储数据。使用
let或const声明。 - 语句 (Statements): 执行一个动作,如变量赋值、函数调用、流程控制(
if,for等)。
typescript
// 变量声明和赋值
let a: number = 10;
const b: number = 20;
// 条件语句
if (a < b) {
console.log("a is less than b");
}
// 循环语句
for (let i = 0; i < 3; i++) {
console.log(i);
}将这些基本结构组合起来,就可以构建出功能丰富的 TypeScript 应用程序。