1

可能重复:
JavaScript parseInt 八进制错误的解决方法

这是一个显示行为的jsfiddle :

很简单的问题,有什么想法吗?

代码只是:

parseInt(013)
4

3 回答 3

12

因为如果你的数字以'0'开头,那么它被认为是八进制的,因此

'013' = 1 * 8 + 3 = 11
于 2012-11-28T19:15:03.893 回答
10

parseInt()需要一个字符串。您提供了一个八进制, 013

采用:

parseInt('013', 10)

注意:为了清楚起见,我也鼓励传递radix

于 2012-11-28T19:14:51.983 回答
2

该数字013被解释为八进制。与它无关parseInt;事实上,var a = 013;会有。a11

于 2012-11-28T19:17:03.453 回答