Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript NodeJS“;这";空对象_Javascript_Node.js_This - Fatal编程技术网

Javascript NodeJS“;这";空对象

Javascript NodeJS“;这";空对象,javascript,node.js,this,Javascript,Node.js,This,为什么NodeJS中的“this”是空对象? “module.exports”属于哪里 我认为“module.exports…”可以写成“this.module.exports…”,但它不起作用 如果您是在实际模块中,谢谢您: 模块是对当前模块的引用 导出是对导出数据的引用。它被NodeJS缓存掉,并传递给需要它的其他模块 此是对导出对象的替代引用 module.exports是对exports对象的替代引用 此.模块未定义 此为空,因为如上所述,它是对与导出相同的对象的引用,该对象将由开发

为什么NodeJS中的“this”是空对象? “module.exports”属于哪里

我认为
“module.exports…”
可以写成
“this.module.exports…”
,但它不起作用


如果您是在实际模块中,谢谢您

  • 模块
    是对当前模块的引用

  • 导出
    是对导出数据的引用。它被NodeJS缓存掉,并传递给需要它的其他模块

  • 是对
    导出
    对象的替代引用

  • module.exports
    是对
    exports
    对象的替代引用

  • 此.模块
    未定义

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

如果
此.module
引用了
模块
,那么由于
引用了
导出
,它将导出
模块
本身以及其他导出项。我怀疑这是否可取



如果您在REPL中,则定义了
此.module

适用于我,您使用的是什么设置?Ubuntu 12.04中的NodeJS 0.8.11。我有一个带有console.log的“app.js”文件(这个);当我运行它时,它会打印{}this.module.exports.go=function()TypeError:无法读取未定义的属性“exports”这一行在什么上下文中?它是在模块级还是在函数内部?@phenomnomnominal:您是在REPL中测试的吗?