我寫了一個非常簡單的java腳本代碼。我想使用本地函數來更改全局變量的值。我想當我打電話value1()
功能比輸出應該是「2」。我如何執行此操作在java腳本中使用本地函數更改全局變量值
var xhr=1;
alert(xhr);
function vari(){
xhr=2;
alert(xhr);
}
function value1(){
//here the value should be 2
alert(xhr);
}
我寫了一個非常簡單的java腳本代碼。我想使用本地函數來更改全局變量的值。我想當我打電話value1()
功能比輸出應該是「2」。我如何執行此操作在java腳本中使用本地函數更改全局變量值
var xhr=1;
alert(xhr);
function vari(){
xhr=2;
alert(xhr);
}
function value1(){
//here the value should be 2
alert(xhr);
}
您的代碼正常工作!你不得不調用vari()
,但你知道,對吧?如果你不調用改變值的函數,你不能指望變量發生變化!
沒有答案的Userful – StaticVariable
當你調用'VARI()''前值1()',它的作品!如果嘗試時它不起作用,那麼你做錯了什麼。順便說一句,不是一個有用的評論! – Amberlamps
的xhr
在value1()
函數的值將是2
只有如果你已經叫vari()
。
我稱之爲vari(),但其值仍爲1 – StaticVariable
不,它不是:http://jsfiddle.net/rttgE/ – lanzz
從給定的場景中,我認爲你在致電vari()
之前致電value1()
函數。 這就是爲什麼你得到1作爲輸出。
試試下面的代碼
var xhr=1;
alert(xhr);
function vari(){
xhr=2;
alert(xhr);
}
function value1(){
//here the value should be 2
alert(xhr);
}
window.onload = vari();
window.onload = value1();
嘗試'window.xhr = 2;' – Stefan