module是随文件而生的全局变量,它有exports属性,这个属性默认是一个空的字典. node的设计者画蛇添足有定义了一个exports全局变量,export指向module.exports所指向的空字典. 所以,当你想要往module.exports里面放东西时,可以简写为exports.myfunction=...的形式. 但是如果你给exports赋值,比如exports={myfunction:...},那就大错特错了:exports和module.exports不再指向同一个东西了…