js的parseInt函数结果为0很奇怪的问题

当执行的代码为parseInt("08")时,结果为0

而执行的代码为parseInt("0X")时,其中X为1~9之间除过8的数字,结果都是正常的数字


不太明白为什么会出现这样的结果


参考:http://lhb-ljf.iteye.com/blog/1703631

今天再用parseInt方法进行字符到数字转化时,发现

parseInt("09")+1结果为2

parseInt("08")+1结果为1

而parserInt("07")+1结果则正常

 

通过他人帮助得知,原来parseInt方法吧“08”,“09”这些开头为0的默认当做是8进制了,素以结果不对。

而如果想按照10进制来计算的话,应为:

parseInt("08",10)+1 , 则结果正常,为9


看到上面的结果,貌似结果为零还是有真相的


posted @ 2013-04-24 08:28  小龙在线  阅读(274)  评论(0编辑  收藏  举报