js中parseInt()相加减的问题

       在工作中,要求实现一个只能查询往前一个月以内的数据,于是就想在jsp页面里通过js来求得月数,然后相减做判断。现在出现的问题是这样的,比如输入两个日期:20121023和20120823,然后截断用substring截成年月日后,求月数。

 

var monthnum1 = parseInt("2012") * 12 + parseInt("10");  //(这个值等于24154,正确)

但是,

var monthnum2 = parseInt("2012") * 12 + parseInt("08");  //(这个值等于24144,不正确,应该是24152)

 

经过单独输出,发现parseInt("08")的值为:0.分析啊分析,查啊查,结果出来了。

 

        对于"08","09",parseInt()函数是把他们看做是八进制,原因是前面的那个"0",如果想要"08","09"转换成想要的十进制数字,怎么办呢?那就要用到函数:parseInt("08",10)。

你可能感兴趣的:(JavaScript,js,parseInt())