TypeScript的命名空间和模块」的摘要信息

命名空间(Namespace) 定义方式:命名空间通过 namespace 关键字来定义。可以将相关的代码包裹在一个命名空间内,避免全局作用域污染和命名冲突。 namespace MyNamespace { export function greet(name: string): string { return `Hello, ${name}!`; } } 使用方式:在命名空间内定义的成员需要使用 export 关键字导出,使得它们可以在命名空间外部访问。在其他部分,可以使用 MyNamespace.xxx 的方式来调用命名空间内的成员。 const message = MyNamespace.greet("Laucher"); console.log(message); // 输出:Hello, Laucher! 适用场景:命名空间适用于将逻辑相关的代码组织在一起,避免全局作用域污染。它也用于避免命名冲突,特别是在使用第三方库或外部代码时。 模块(Module) 定义方式:模块通过 export 关键字来导出成员,并在其他地方使用 import 关键字来导入模块的成员。模块化的代码结构更适合大型项目,使得项目结构更清晰、更易于维护。 // MyModule.ts export function greet(name: string): string { return `Hello, ${name}!`; } 使用方式:在其他模块中,可以使用 import 关键字来导入模块内的成员,并通过函数名调用模块内的函数。 // Main.ts import { greet } from "./MyModule"; const message = greet("Laucher"); console.log(message); // 输出:Hello, Lauch...