码迷,mamicode.com
首页 > 其他好文 > 详细

module.exports、exports、export、import、export default区别

时间:2019-08-22 18:44:04      阅读:97      评论:0      收藏:0      [点我收藏+]

标签:class   common   color   comm   使用   var   return   sha   sharp   

CommonJs规范:module.exports、exports

module.exports和exports 是commonJs的语法,大家熟知的node就是基于CommonJs语法设计的,node将每个文件视为一个拥有独立作用域链的模块,

每个木块的类,变量,函数等都是私有的,对其他文件不可见。但是,如果别的模块想要使用另一个模块的函数应该如何处理呢,这时我们就会用到module.exports、exports了。

node将每个独立的文件视为一个mudule,而exports是为了将本模块内的变量函数暴露给外面使用的写在module对象上的接口,因此使用时可以通过module.exports来说暴露内部接口到外面:

// add.js
let a = 123;
let add = function (val) {
  return val + a;
};
module.exports.a = a;
module.exports.add = add;

使用时:

// index.js
var add = require(‘./add.js‘);
console.log(add.a); // 123
console.log(add.add(1)); // 124

另外:
node为了方便使用会给每个模块头部提供一个exports变量,内部实现很简单var exports = module.exports;

因此,我们也可以,直接:
exports.add = add 将上面add.js的add函数暴露出去。

ES6模块规范:export、import、export default
Es6使用 export 和 import 来导出、导入模块

// index.js
var name = ‘zhangsan‘;
var age = ‘12‘;
var sex = ‘man‘;

export {name, age, sex};

或者

export default function () {
  console.log(‘123123‘);
}

  

 

module.exports、exports、export、import、export default区别

标签:class   common   color   comm   使用   var   return   sha   sharp   

原文地址:https://www.cnblogs.com/mrbabibo/p/11395906.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!