NodeJS“这个”空对象

时间:2012-10-01 23:26:49

标签: javascript node.js this

为什么"这" NodeJS中的空对象? " module.exports"属于?

我认为"module.exports..."可以写成"this.module.exports...",但它不会起作用。

谢谢

1 个答案:

答案 0 :(得分:16)

如果您在实际模块中:

  • module是对当前模块的引用

  • exports是对导出数据的引用。它被NodeJS缓存并传递给require

  • 的其他模块
  • thisexports对象的替代参考

  • module.exportsexports对象的替代参考

  • this.moduleundefined

this为空,因为如上所述,它是与exports相同的对象的引用,该对象将由开发人员填充。

如果this.module是对module的引用,那么由于thisexports的引用,它会将module本身与其他this.module一起导出出口物品。我怀疑这是不可取的。


如果您在REPL中,则定义{{1}}。