typescript(Day6) - - 命名空间与命名空间模块化
命名空间在其他语言中已经是一个很常见的功能了 c# java php都有命名空间的
过去JS是不存在命名空间的 在TS里面 实现了命名空间 但实际的原理还是通过立即执行函数(自执行函数) - 因为函数有块作用域
使用方式
- TS使用
namespace 空间名{} 的形式来定义命名空间 命名空间下的数据放在大括号里面
- 命名空间内部之间的变量可以随意进行访问,如果命名空间以外的区域想要访问空间里面的数据,需要使用
export 关键字将空间内部的变量导出。
模块化导入导出知识点复习
TS 中的模块化的导出导出 和 ES6 的模块化导入导出基本是一致的,因为ts是js摸超集
export 和 export default 区别
-
export default 只能导出一次 (所以是需要将要导出的数据一起放在一个对象里面 统一导出)
-
export 可以分多次导出 默认的也会将分多次导出的数据整合成一个对象的形式导出
命名空间和模块化的异同
- 都可以实现变量名‘重复定义’
- 命名空间:内部模块,主要是用于组织代码,避免命名冲突
- 模块: TS的外部模块检测, 主要侧重的是代码的复用,一个模块里可以有多个命名空间
总结:
- ts有了命名空间这个机制之后让我们在编程的时候更加得心应手了,要是掌握了es6的模块化导入导出之后,ts的模块化的知识点是一样的,需要掌握的是知道在什么时候使用模块化、什么时候使用命名空间。
|
请发表评论