Node.js全局变量可访问性

时间:2014-04-18 23:40:06

标签: javascript node.js global-variables

我正在尝试编写一个基于NodeJS的应用程序,我声明了一个全局变量,并尝试在我的代码中的一个函数中修改它。但它没有得到修改。代码看起来像这样:

var num=0, check = true;
function( a, b){
  var parts = a.split("/");
  while (num == 0){
    check=false;
    fileSystem.readFile(parts[parts.length-1], function (err, fileData) {  .
    .
    check= true
    }
 }
 if(check == true){
   num++;
   console.log("check: "+check+"num"+num);
 }
}

我总是将num的值视为0。我也尝试在函数内部使用global.num,但是它可以工作。请帮忙。提前谢谢。

2 个答案:

答案 0 :(得分:0)

您的功能尚未被调用,因此没有理由更改num的值。

答案 1 :(得分:0)

即使你的函数被调用,它也包含一个无限循环(据我所知,因为你好像在循环中省略了一些代码)。它将永远循环,因为它测试num是否为0,但{<1}}仅在循环退出后更改。