易百教程

22、内部模块和外部模块有什么区别?

内部模块和外部模块的区别如下:

编号 内部模块 外部模块
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));  
    }  
}