Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/37.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全局范围?_Javascript_Node.js - Fatal编程技术网

终端中的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中效果不同