有人可以解释为什么javascript会将parseInt(08)
和parseInt(09)
解释为零但是在01到07之间做的一切正确吗?
parseFloat
会为这些值提供正确的值,我找不到答案,为什么javascript只会对8s和9s执行此操作。
供您参考:前导零是时间(小时:分钟)。
请查看以下链接以获得更好的示例:http://jsfiddle.net/NPtzA/3/ 在那里你可以看到这种意想不到的行为。
答案 0 :(得分:0)
parseInt
返回0,因为该函数正在尝试确定它正在查看的数字系统的正确基础。
无论是否好,带有前导0的JavaScript数字都被视为八进制,这意味着没有08或09。
希望有所帮助。
修改:查看我对您的小提琴的编辑,将10
参数添加到parseInt
以更改其使用的数字系统http://jsfiddle.net/jbrooksuk/NPtzA/5/