全局变量范围在Node.js控制台中无法识别

时间:2015-11-24 18:01:09

标签: javascript node.js scope console strict

所以在浏览器(chrome)中,如果我在js控制台中运行此代码,则函数调用foo();打印到数字2的控制台。但如果我在node.js中运行它,函数调用foo()将打印 undefined 。为什么会这样?节点是否以“严格模式”自动运行代码?

s.

1 个答案:

答案 0 :(得分:2)

正如document

中所述
  Node.js模块中的

var将是该模块的本地内容。

所以,情况会有所不同。

您也可以尝试:

function foo() {     
   console.log(this.a); 
} 
global.a = 2; 

foo();