【发布时间】:2013-11-14 14:36:41
【问题描述】:
所以,我在函数之前输入变量,以便让它们随着每个函数调用而增长。 但是当我试图打印它们或在计算中使用它们时,JS 返回 NaN 或 undefined。从函数外部调用时,一切正常。 我错过了什么?
更新:哦,代码!
Upd2:通过使用各种方式声明 var,在使用 8+9 输出测试它时,我仍然得到 NaN 和 undefined。使用 window.GLD 和 GLD = 0 而不是 var GLD = 0;据我所知,我可以在没有 var 函数的情况下声明它,并且不会在这个函数之外影响它。但是我如何从函数外部拖动变量?
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 中你有全局变量和局部变量,谷歌在这两件事上。 :) 还有 - mattgemmell.com/2008/12/08/what-have-you-tried
-
通过使用各种方式声明 var 我仍然得到 NaN 和 undefined ,同时用 8+9 输出测试它。使用 window.GLD 和 GLD = 0 而不是 var GLD = 0;据我所知,我可以在没有 var 函数的情况下声明它,并且不会在这个函数之外影响它。但是如何从函数外部拖动变量?
-
您能否将问题隔离为几行代码,而不是复制整个源代码?
-
如果我知道出了什么问题,我愿意。不过,我已经把它删掉了,我希望我没有错过一些重要的事情。
标签: javascript function nan