我试图将数字字符串转换为数字,然后我想增加(或减少)它的值,最后它应该写回到原来的位置(在一个范围内)。但我一直都想与NaN当我尝试parseInt函数:将字符串转换为int的错误
var like_value = "0";
if (navigator.userAgent.indexOf("Firefox") != -1)//firefox
like_value = document.getElementById('mySpan').innerHTML;
else
like_value = document.getElementById('mySpan').innerText;
like_value = like_value.substring(1, like_value.length - 1);
var real_number = parseInt(like_value, 10);
real_number++;
alert(real_number);//it displays NaN !!!
if (navigator.userAgent.indexOf("Firefox") != -1)//firefox
document.getElementById('mySpan').innerHTML = real_number;
else
like_value = document.getElementById('mySpan').innerText = real_number;
我觉得应该是我的子问题,当然,我得到了我希望,但也许它不能正确地转换成int
你尝试调试怎么看是你like_value?只需添加'console.log(like_value);'并键入F12以查看控制台。 – 2012-07-20 12:53:15
我使用alert来编写它,它在like_value = like_value.substring(1,like_value.length - 1)中没问题; ,但parseInt后我得到NaN – 2012-07-20 12:54:11
这与您的问题无关,但它是有用的建议;浏览器嗅探是* sooo * 1500的。你应该看看使用***功能检测***来代替(例如document.createElement(“div”)中的'“textContent”'而不是'navigator.userAgent.indexOf(“Firefox”)!= -1' – Matt 2012-07-20 12:55:15