在Javascript中添加多个变量之和的正确方法是什么?
这就是我想要做的。我在我的变量周围使用和不使用引号尝试了它。我没有得到NaN或Undefined或任何东西。没有任何输出。
function setstat(){
document.getElementById('date').value = window.opener.document.getElementById('thisday').value;
document.getElementById('name').value = window.opener.document.getElementById('element_7').value;
document.getElementById('time').value = window.opener.document.getElementById('stwa').value;
inbcalls = window.opener.document.getElementById('element_6').value;
document.getElementById('totinb').value = inbcalls;
inbcallsp = parseInt("inbcalls",10);
asaptotal = window.opener.document.getElementById('asapcalls').value;
document.getElementById('asaptot').value = asaptotal;
asaptotalp = parseInt("asaptotal",10);
faxtotal = window.opener.document.getElementById('faxcalls').value;
document.getElementById('faxtot').value = faxtotal;
faxtotalp = parseInt("faxtotal",10);
obtotal = window.opener.document.getElementById('obcalls').value;
document.getElementById('obtot').value = obtotal;
totalcalls = inboundcallsp + asaptotalp + faxtotalp + obtotalp;
document.getElementById('totsum').value = totalcalls;
}
答案 0 :(得分:2)
为什么要引用变量名?
inbcallsp = parseInt("inbcalls",10);
应该是:
inbcallsp = parseInt(inbcalls, 10);
其他人也一样。您想要解析变量的值,而不是变量的名称;这些将永远导致NaN
。
答案 1 :(得分:1)
asaptotalp = parseInt(“asaptotal”,10); “asaptotal”被认为是字符串而不是变量 你不应该引用它
答案 2 :(得分:0)
使用parseInt时,请始终将基数指定为10。
函数singnature:parseInt(string,radix)
基数是可选的,但如果省略,则JavaScript假设如下:
如果字符串以“0x”开头,则基数为16(十六进制) 如果字符串以“0”开头,则基数为8(八进制)。此功能已弃用 如果字符串以任何其他值开头,则基数为10(十进制)
实施例: parseIn(“05”)==== 0 - >真
parseIn(“05”,10)==== 5 - >真
答案 3 :(得分:-1)
不要使用ParseInt
,有时它不会返回正确的值。
更好地使用Number
,例如:
var i=Number(your value)