node.js中的this默认绑定什么对象?

在浏览器中this默认绑定window全局对象,在NodeJS中呢?
比如:

var a=2;

在NodeJS中全局变量a,是哪个对象的属性

阅读 6.5k
5 个回答

node加载文件后会把文件中的代码封装到
(funtion(exports,module){

//自己的文件代码 

})()
所以你在代码中直接定义的变量都是匿名函数的局部变量,不属于哪个对象的属性。手机打字很费劲啊!

全局是global,你这个var a = 2不会挂到全局的

Node.js 中的全局对象是 global,在Node.js中定义一个全局变量 ,所有全局变量(除了global本身以外)都是 global 对象的属性。

如果单单写 a=2 可以挂到全局,查看全局 global.a 输出是2。

node 中文件是模块化的,每个文件内定义的变量可以说是局部变量(只在该文件中能访问到)。若要定义全局变量:GLOBAL.A = 2 ; 若要其它文件能访问则导出模块中 exports.a = 2,

推荐问题