[英]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
temp
和global
指的是兩個不同的變量。 分配給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.