内部模块和外部模块的区别如下:
编号 | 内部模块 | 外部模块 |
---|---|---|
1 | 内部模块用于在逻辑上将类、接口、函数、变量分组到一个单元中,并且可以在另一个模块中导出。 | 外部模块在隐藏模块定义的内部语句时很有用,并且只显示与声明的变量相关的方法和参数。 |
2 | 内部模块在早期版本的 Typescript 中。但是在最新版本的 TypeScript 中使用命名空间仍然支持它们。 | 外部模块在最新版本的 TypeScript 中简称为模块。 |
3 | 内部模块是其他模块(包括全局模块和外部模块)的本地或导出成员。 | 外部模块是使用外部模块名称引用的单独加载的代码体。 |
4 | 内部模块使用指定其名称和主体的 ModuleDeclarations 声明。 | 外部模块被编写为单独的源文件,其中至少包含一个导入或导出声明。 |
内部模块示例代码:
module Sum {
export function add(a, b) {
console.log("Sum: " +(a+b));
}
}
外部模块示例代码:
export class Addition{
constructor(private x?: number, private y?: number){
}
Sum(){
console.log("SUM: " +(this.x + this.y));
}
}