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)。

發佈了26 篇原創文章 · 獲贊 234 · 訪問量 36萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章