模块化介绍、优势以及产品
优势:
1.防止命名冲突
2.代码复用
3.高维护性
产品:
ES6之前的模块化规范:
1.CommonJS => NodeJS、Browserify
2.AMD => requireJS
3.CMD => seaJS
ES6模块化语法
模块功能主要由两个命令组成,export和import.
export命令用于规定模块的对外接口
import命令用于输入其他模块提供的功能
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| export let school = 'bilibili'; export function teach(){ console.log('恭喜你达成在B站上大学成就'); }
let school = 'bilibili'; function teach(){ console.log('恭喜你达成在B站上大学成就'); } export {school,teach};
export default { school:'bilibili', change:function(){ console.log('我们可以改变你!!'); } }
<script type="module"> import * as m1 from "./m1.js" console.log(m1); </script>
|

ES6引入模块
1 2 3 4 5 6 7 8 9 10
| import * as m1 from "./m1.js"
import {school,teach} from "./m1.js"; import {default as m3} from "./m3.js";
import m3 from "./m3.js"
|
ES6引入模块2
1 2 3 4 5 6
| import * as m1 from "./m1.js" import * as m2 from "./m2.js"
<script src="./app.js" type="module"></script>
|