首页 > Web开发 > 详细

ES6 模块化与 CommonJS 模块化

时间:2019-04-11 12:45:59      阅读:160      评论:0      收藏:0      [点我收藏+]

ES6 模块化

  • import命令用于输入其他模块提供的功能;export命令用于规定模块的对外接口。
  • export 可以有多个,export default 仅有一个
a.js 模块a文件 导出多个方法
export function getCookie(key) {
    ...
}

export function setCookie(key) {
    ...
}

b.js 引入模块并使用
import { getCookie, setCookie } from './a';
a.js default关键字只导出一个方法或对象
export default {
  info(content) {
    ...
  },
  error(content) {
    ...
  },
};

CommonJS 模块化

Node 应用由模块组成,采用 CommonJS 模块规范。
每个文件就是一个模块,有自己的作用域。在一个文件里面定义的变量、函数、类,都是私有的,对其他文件不可见。

虽然定义的变量、函数、类,都是私有的,但是如果在某个对象的prototype扩展了方法,还是会影响使用整个全局使用的作用域中的。下面示例。

c.js c模块
const c = ['我是c'];
c.log('c');
export default c;

b.js b模块
Array.prototype.log = function (p) {
    console.log('test>>'+p);
}
const b = ['我是b'];
export default b;

a.js a模块
import bb from './b'; //如果在c模块之前没有使用b模块,c模块中是无法是用原型上扩展的方法的,抛出错误
import cc from './c';
const aa = ['我是a'];
aa.log('a');
bb.log('b');

ES6 模块化与 CommonJS 模块化

原文:https://www.cnblogs.com/hideonbush/p/10688730.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!