zoukankan      html  css  js  c++  java
  • 我的天,javascript中parseInt(08)和parseInt(09)居然返回0

    最近在使用My97DatePicker日期选择控件时,有一个需求,需要在选择中的日期的基础上按照一定的规则添加指定的天数。

    在使用Javascript中的parseInt()函数中,无意中发现一个问题:

    parseInt(08)和parseInt(09),居然返回的是“0”。

    原以为是My97DatePicker的问题,后来一步步排查,感觉是parseInt函数的问题。

    摆肚一下,还真是它有问题。(其实问题还是自己没有对这个函数十分了解。)

    --------------------------------

      对于parseInt("01")到parseInt("07");都能得到正确的结果,但如果是parseInt("08") 或parseInt("09")则返回0;

      首先看parseInt语法:parseInt(string, radix);

      其中string为要转换的字符串,radix为二进制,八进制,十六进制或十进制。

      在默认不指定radix时,当以0x开关时,为十六进制;如果以0开关且第二位不为x,则让为是八进制,(因为八进制不能有8,9所以报错返回0)。

      所以,在我们用时还是明确指定进位制,以防出错。

      如我们平时都用十进制位,我们就 parseInt("08", 10);

  • 相关阅读:
    Sum Root to Leaf Numbers深度优先计算路径和
    Path Sum II深度优先找路径
    动态和静态链接库
    C/C++变量
    搜索
    基本格式
    随机数生成函数
    珍惜生命,我用Python 。今天开始学习Python
    在windows里hexo 博客创建步骤
    作为一个程序员,什么是脚本。必须要理解
  • 原文地址:https://www.cnblogs.com/luqingfei/p/1762391.html
Copyright © 2011-2022 走看看