模块系统 exports导出(核心模块fs,http等已经将所有方法导入了module.exports,所以可以加载完核心模块后直接调用例 fs.readFile(),,而自定义模块默认module.exports为空,需要我们手动添加方法及属性)

var exports=module.exports;(隐藏的语句)
由于 exports=module.exports,两者指向同一对象;
所以这时 exports.a=5;等价于=module.exports.a=5;都会给同一对象添加a=5;


但是当exports=‘x’时,exports指向新的值,这时exports和module.exports各自指向不同的值、对象,单方的改变对另一方互不影响;


且最后return module.exports,exposts的改变不会影响输出,module.exports的改变可以影响输出
原文地址:https://www.cnblogs.com/xjt31/p/13189431.html