ES6 Module2

export命令

<code>export</code>命令用于规定模块的对外接口
一个模块是一个独立的文件,该文件内部的变量外部无法获取,若外部需要读取改文件内部的变量,必须使用<code>export</code>关键字输出该变量

export var firstName = 'Michael';
export var lastName = 'Jackson';
export var year = 1958;    

var firstName = 'Michael';
var lastName = 'Jackson';
var year = 1958;
export {firstName, lastName, year};

上面的是输出变量
<code>export</code>命令还可以输出函数和类

export function multiply(x, y) {
  return x * y;
};//对外输出一个函数multiply

<code>export</code>输出的变量可以使用as关键字重命名

function v1() { ... }
function v2() { ... }
export {
  v1 as streamV1,
  v2 as streamV2,
  v2 as streamLatestVersion
};//重命名后原来的名字也是可以使用的

需要特别注意的:<code>export</code>命令规定的对外接口必须与模块内部的变量建立一一对应关系.
最后,<code>export</code>命令可以出现在除了块级作用域内模块的任何位置,只要处于模块顶层.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • ModuleES6的Class只是面向对象编程的语法糖, 升级了ES5的构造函数的原型链继承的写法, 并没有解决模...
    Captain_tu阅读 172评论 0 1
  • let const 声明变量 1. let变量声明 let的特点是不会变量提升, 2. const 变量声明 c...
    点_ba7a阅读 309评论 0 0
  • 更合理的方式写 JavaScript 原文看 这里 ,收录在此为便于查阅。 类型 1.1 基本类型:直接存取。字符...
    杀破狼real阅读 8,847评论 0 6
  • ES6模块不是对象,而是export命令显示指定输出的代码,输入时也采用静态命令的形式。 上面是从fs模块里加载3...
    竹天亮阅读 7,618评论 2 17
  • (a fork of Airbnb's Javascript Style Guide) Strikingly ES...
    飘零_zyw阅读 1,200评论 1 2