所以,我在函數之前輸入變量以便讓它們隨着每個函數調用而增長。 但是當我試圖打印這些或在計算中使用它們時,JS返回NaN或undefined。從功能外調用時,一切正常。 我錯過了什麼?JS:從函數外部調用變量
Upd:哦,代碼!
Upd2:通過使用各種方式來聲明VAR我仍然得到NaN和未定義,同時測試它與8 + 9輸出。同時使用window.GLD和GLD = 0而不是var GLD = 0;就我所知,我可以在不使用函數的情況下聲明它,並且不會影響它。但是,我如何從函數外部拖動變量?
Upd3:嘗試使用var GLD = GLD + 1(聲明它在函數內部)後,我仍然得到NaN。所以最後的問題是:我如何從外部獲取變量內容?
var depth = 0;
var maxHP = 10;
var currentHP = 10;
var DMG = 2;
var ARM = 1;
var GLD = 0;
var currentExp = 0;
var neededExp = 5;
var GobHP = 2;
var GobHPMax = 2;
var CurrentGobHP=2
var GobDMG = 1;
var GobDEF = 0;
var GobBSInc = 2;
var GobexpInc = 2;
var GobDmgDone = 1;
var dmgDone=0;
var wpnTier=0;
var turn=1;
var nextEvent=0;
document.getElementById("statusChar").innerHTML="HP: "+currentHP+"/"+maxHP+" DMG: "+DMG+" ARM: "+ARM+" GLD: "+GLD+" EXP: "+currentExp+"/"+neededExp+" Depth: "+depth;
//It's ok here - code dosent goes NaN or undefined
function goDeeper()
{ depth++;
document.getElementById("statusChar").innerHTML="HP: "+currentHP+"/"+maxHP+" DMG: "+DMG+" ARM: "+ARM+" GLD: "+GLD+" EXP: "+currentExp+"/"+neededExp+" Depth: "+depth;
// and here it dies. Prompt to stop it from going to next step.
prompt();
分享你試過的代碼。 –
在Javascript中,您獲得了全局和局部變量,Google對這兩件事情進行了處理。 :)另外 - http://mattgemmell.com/2008/12/08/what-have-you-tried/ – Nathan
通過使用各種方式來聲明VAR我仍然得到NaN和未定義,同時測試它與8 + 9輸出。同時使用window.GLD和GLD = 0而不是var GLD = 0;就我所知,我可以在不使用函數的情況下聲明它,並且不會影響它。但是,我如何從函數外部拖動變量? –