简要介绍:ES6在语言规格的层面上,实现了模块功能,而且实现得相当简单,完全可以取代现有的
CommonJS和AMD规范,成为浏览器和服务器通用的模块解决方案。
ES6模块主要有两个功能:export和import
export用于对外输出本模块(一个文件可以理解为一个模块)变量的接口
import用于在一个模块中加载另一个含有export接口的模块。
1.以对象属性形式的export和import
(1)一般的形式
1 2 3
| export let x=1; export let y=2;
|
1 2
| import{x,y} from "./export.js" console.log(x,y)
|
(2)函数名的形式
1 2
| import {x} from "./export.js"; console.log(x)
|
也就是说:
1 2 3 4 5
| export function x(){ }
export let x=function(){ }
|
(3)import as
1 2 3 4 5 6 7
| export let x=1; export let y=2;
import * as myVar from "./export.js" console.log(myVar.x) console.log(myVar.y)
|
2.以模板形式的export和import
1 2
| export default let x=1;
|
1 2
| import x from "./export.js"; console.log(x)
|
可以发现,通过export模板的话,输出的格式不是以对象的形式{x},而是直接的x。