(一)ES6Module
在ES6之前社区指定了一些模块加载方案
最主要的有
CommonJS 和 AMD两种
前者是用于服务器
后者用于浏览器
ES6在语言标准上实现了模块功能Module
而且实现的相当简单,完全可以取代
CommonJS和AMD规范,成为浏览器和服务器通用的模块解决方案
创建A.JS
var sex="boy"; var echo = function(value){ console.log(value) } console.log("呵呵") //导出sex echo export {sex,echo}
创建B.JS
//引入 import {sex,echo} from "./A.js" console.log(sex) // boy echo(sex) // boy
创建index.html页面
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> </head> <body> <script type="module" src="B.js"> </script> </body> </html>
会输出 A.JS里的内容
(二)CommonJS规范
创建A.js
let s = 'hello'; function greet(name){ console.log(s+','+name+'!'); } //导出 greet module.exports = greet;
创建B.js
// 引入 A.js内容 let greet = require('./A'); let s ='老干爹!'; greet(s);
node B.js 执行
(三)ADM规范
AMD规范是"Asynchronous Module Definition"的缩写
意思就是异步模块定义
AMD更适合浏览器加载
AMD也是用require()语句加载模块,但是不同于CommonJS,它要求两个参数
require([moudule,callback]);
第一个参数[moudule],是一个数组,里面的成员就是要加载的模块;
第二个参数callback,则是加载成功之后的回调函数
所有评论(0)