终端中的JavaScript全局范围?
我有以下代码:终端中的JavaScript全局范围?,javascript,node.js,Javascript,Node.js,我有以下代码: function foo(){ console.log(this.a); } var a = 2; foo(); 当在浏览器控制台中运行时,上面的代码给出了2。我通过执行node up and go.js在终端中运行相同的代码,得到了未定义的 我错过了什么 附言:我是JavaScript新手 nodejs中的“默认”范围/上下文为different@charlieftl糟糕的愚弄,没有提到nodejsall@JonasW. ?我知道在浏览器中,我的示
function foo(){
console.log(this.a);
}
var a = 2;
foo();
当在浏览器控制台中运行时,上面的代码给出了2
。我通过执行node up and go.js
在终端中运行相同的代码,得到了未定义的
我错过了什么
附言:我是JavaScript新手
nodejs中的“默认”范围/上下文为different@charlieftl糟糕的愚弄,没有提到nodejsall@JonasW. ?我知道在浏览器中,我的示例中的
this
指的是浏览器全局变量window
,因为函数foo()已全局调用代码>。谁能告诉我我做得对吗?@lomse是的,但在nodejs中效果不同