用parseInt()求和变量;不工作

时间:2012-07-05 02:24:50

标签: javascript variables add parseint

在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;
}

4 个答案:

答案 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)