其实主要是这个:
alert("开始测试 08");
alert(parseInt("08"));期输出结果是0,因为08在这里代表8进制,所以分析结果是0

解决方案 »

  1.   

    那么parseFloat为什么可以输出8?
      

  2.   

    原因是这样的,因为你使用的是八进制的直接量,而08是非法的八进制表示,所以结果是0,你可以换成 alert(parseInt('010'));一试你就会发现结果是8,所以,这是因为数字直接量的表示的问题.
      

  3.   

    js语法中parseInt有这样的规定而parseFloat没有
    前缀为 '0x' 的字符串被当作十六进制,前缀为 '0' 的字符串被当作八进制。所有其它字符串都被当作是十进制的。