[toc]
每个.js
自定义模块中都有一个module对象,它里面==存储了和当前模块有关的信息==
属性,默认是Nuil,可以将模块的成员共享出去,供外界使用。
使用require()方法导入自定义模块时,得到的就是module.exports所指的对象
const age = 20
module.exports.age = age //将age常量暴露出去
使用require()方法导入模块时候,导入的结果,永远以module.exports指向的对象为准,即如果有两个对象,指向后面后面所指的对象
由于module.export单词写起来复杂,为了简化向外共享成员的代码,Node提供了export对象,默认情况下,exports和module.exports指向同一个对象。最终的结果还是以module.exports指向的对象为准。
==时刻谨记,require()模块时,得到的永远是module.exports指向的对象。==
为了防止混乱,避免在同一个模块中同时使用export和module.exports