命名空间
关于术语的一点说明: TypeScript 1.5 里, “内部模块”现在称做“命名空间”,“外部模块”现在则简称为“模块”。
在 JavaScript
中,我们需要一种手段来组织代码,以防止对象之间产生命名冲突。 因此,我们把代码包裹到一个个命名空间内,而不是把它们放在全局命名空间下,可以有效避免全局污染。
虽然在 ES6
中引入了模块系统后,不需要再考虑全局污染问题,但当我们使用全局类库时,命名空间依然是个比较好的解决方案。
使用
-
a.ts
namespace Shape { const pi = Math.PI; export function circle(r: number) { return pi * r ** 2; } export