JavaScript对象中的临时变量

时间:2013-07-30 09:35:47

标签: javascript oop

this.method=method;
function method() {
    var temp = globalVar1 - globalVar2;
    if(temp == 0) {
        //etc.
    }
}

我有一个类似于上面的方法(在一个对象中),我只想创建一个临时变量,我可以使用它来使'if'语句更整洁,但temp始终是最初的globalVar1 - globalVar2价值是。如果更新了globalVars,则temp不会更新。谢谢!


抱歉! 结果证明这是我的一个愚蠢的错误。

每次调用方法时,temp变量都会更新。

我想这个问题可以删除吗?

2 个答案:

答案 0 :(得分:2)

  

如果更新了globalVars,则temp不会更新。

您无法使变量代表实时更新表达式。

改为使用功能。

function temp() { return globalVar1 - globalVar2; }
if (temp() == 0) {
    /etc
}

答案 1 :(得分:1)

尝试从var删除关键字var temp

把它作为:

temp = globalVar1 - globalVar2; //i.e. without var

如果这不起作用,则必须改变并使用method(globalVar1, globalVar2);代替..