模块化就是,把一个大文件拆成独立并互相依赖的多个小模块的过程.
通俗的说:一个.js文件可以使用另一个js文件中的数据(变量,函数...),不借助第三方.
为什要学习模块化?
一个js文件中可以引入另一个js文件的数据,这个功能其他编程语言都具备,而2015年之前,js没有(痛点:多个js都放在一个html文件,而不能相互引用)! 2015年出了ES6,在语法层面支持模块化,但是浏览器不支持,所以前面学习传统开发时,还是 多个js都放在一个html文件。 浏览器不支持直接引用,可以通过一下方法实现: 1. 先用开发工具(webpack)搭建一个支持模块化的环境; 2. 在这个环境中写模块化的代码; 3. 用工具打包代码,然后在浏览器中运行;
把代码进行模块化拆分有什么好处?
- 提高了代码的复用性
- 提高了代码的可维护性
- 可以实现按需加载
nodeJS 的三种模块类型:?
内置模块 :? ?对应导入方式-----const xxx = require(模块的名字); 自定义模块:对应导入方式-----const xxx = require(模块文件的相对位置); 第三方模块:对应导入方式-----const xxx = require(模块的名字); 导入第三方模块时,后缀名.js可以省略.
在使用模块化时,大家都要遵守同样的模块化规范写代码; 导入格式: require () 导出格式: module.exports
遵守同样的模块化有哪些好处:
降低了沟通的成本,极大方便了各个模块之间的相互调用,利人利己;
模块作用域是什么?
?类似于函数的作用域,在自定义模块中定义的变量、方法等成员,只能在当前模块内被访问,外部文件是访问不到的.
模块作用域的优点:防止了全局变量污染、文件依赖等问题的产生; ?
|