這篇文章主要為大家展示了“javascript中使用parseInt函數(shù)時(shí)的問(wèn)題示例”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“javascript中使用parseInt函數(shù)時(shí)的問(wèn)題示例”這篇文章吧。
在用javascript的parseInt函數(shù)時(shí),parseInt("08")或者parseInt("09")返回的居然是0,而parseInt("01")...parseInt("07")都是正確的,一開(kāi)始很難理解,后來(lái)發(fā)現(xiàn)出現(xiàn)這個(gè)問(wèn)題的原因是當(dāng)在前面有"0"時(shí),javascript的debugger會(huì)認(rèn)為這是一個(gè)八進(jìn)制數(shù),而"08"和"09"不是一個(gè)合法的八進(jìn)制數(shù),所以導(dǎo)致了那個(gè)問(wèn)題,但是parseFloat不會(huì)存在這個(gè)問(wèn)題。
事實(shí)上,parseInt方法有一個(gè)可選參數(shù)來(lái)表示數(shù)字的進(jìn)制,所以這應(yīng)該不能算是一個(gè)bug,只是我們平時(shí)沒(méi)有注意到這種細(xì)節(jié)問(wèn)題。那么解決的方法很簡(jiǎn)單,就是使用parseInt("08",10)或者parseInt("09",10),通知javascript解釋器使用十進(jìn)制來(lái)解析就可以了。
以上是“javascript中使用parseInt函數(shù)時(shí)的問(wèn)題示例”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道!