js四大模块化编程思想的方式
AMD:require.js
CMD:sea.js
CommondJS:node.js
ES6 Moudle
模块化思想规定了在js中我们的模块该如何创建、导入和导出
模块分类:
内置模块:node中自带的
http/https:创建和管理服务的模块
fs:给予js进行i/o操作的模块
url:解析url地址的模块
path:管理路径的模块
。。。
第三方模块:基于npm安装的,别人写好供我们用的
自定义模块:自己写的
CommonJS特点:
所有代码都运行在模块作用域,不会污染全局作用域
模块可以多次加载,但是只会在第一次加载时运行一次,然后运行结果就被缓存了,以后在加载就直接读取缓存结果
模块加载的顺序,按照其在代码中出现的顺序,CommonJS规范加载模块是同步的,也就是说,只有加载完成才能执行后面的操作