模块化概述
- 传统开发模式的主要问题:1.命名冲突(多个js如果存在重名的变量,则会发生变量覆盖问题)
2.文件依赖(js无法相互引用)
- 通过模块化解决上述问题
模块化就是把单独的功能封装到一个模块(文件)中,模块之间相互隔离,但是可以通过特定的接口公开内部成员,也可以依赖别的模块。
好处: 方便代码的重用,提升开发效率,方便后期的维护
浏览器端模块化规范
AMD:Require.js
CMD:Sea.js
服务器端模块化规范
CommonJS
1 模块分为单文件模块与包
2 模块成员导出:module.exports 和exports
3 模块成员导入:require('模块标识符')
ES6模块化规范
是浏览器端与服务器端通用的模块化规范
每个js文件都是一个独立的模块
导入模块成员使用 import 关键字
暴露模块成员使用 export 关键字
ES6模块化基本语法
1 默认导出与默认导入
2 按需导出与按需导入
3 直接导入并执行模块代码