繁体   English   中英

如何在其他函数javascript中访问全局变量的值

[英]How to access value of the global variable in other function javascript

这是一个类似的例子

var global=0;
function somefunction()
{
    global++;
}

var temp=global;
function somefunctiontwo()
{
    var x=temp;
}

在这里我得到x = 0我想要x = 1

如何将新赋值的全局变量赋值给x

使用对象作为全局变量; 对于简单(数字)类型,将通过引用而不是“按值”分配:

var global = { value: 0 };

var temp = global;

在功能:

global.value++;

现在是:

temp.value == 1

tempglobal指的是两个不同的变量。 分配给global不会更改temp的值。

只需将var x=temp更改为var x=global 目前尚不清楚为什么需要一个中间变量。

var global=0;
var temp;
function somefunction(){
  global++;
}



function somefunctiontwo() {
    var x=temp;
    console.log(x);
}

somefunction();
temp=global;
somefunctiontwo();

这将给你你期望的。 注意你如何/在何处调用这些功能。

你的结构似乎有点偏,不确定这是否是我们看不到的原因......请假设它是。 可以具有将temp值重新定义为global的函数。

function syncGlob(){
    return temp = global;
}

返回temp也可以在创建x时调用它。

var x = syncGlob();

您将temp的值设置为全局PRIOR到准备好的触发 - 此时全局为0.如果在on ready处增加全局,则temp的值为0。

当你单击somefunction2并为x赋值时,temp的值为0,因为在temp启动时,global的值为0 NOT 1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM