首页 新闻 会员 周边 捐助

为什么javascript的parseInt("000023456")得到的结果是10030?

0
[已解决问题] 解决于 2013-01-08 09:38

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
 <HEAD>
  <script>window.onerror=function(e){alert(e);};</script>
  <script>alert(parseInt("000023456"));</script>
 </HEAD>
 <BODY>
 </BODY>
</HTML>

心未鳴的主页 心未鳴 | 菜鸟二级 | 园豆:223
提问于:2013-01-08 09:28
< >
分享
最佳答案
0

因为0开头的数字在js中被认为是8进制,8进制的23456等于10进制的10030. 改成parseInt("00023456",10) 试试。

奖励园豆:5
水牛刀刀 | 大侠五级 |园豆:6350 | 2013-01-08 09:37
其他回答(2)
0
Rich.T | 园豆:3440 (老鸟四级) | 2013-01-08 09:38
0

以0开头被视为八进制,转换为十进制就是10030

McFlying | 园豆:204 (菜鸟二级) | 2013-01-08 09:38
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册