一般我们在获取到日期的时候格式为yyyy-mm-dd
然后要得到日,会使用var arr=split('-')
函数进行分割 取到天数就是arr[2]
当天数arr[2]
为08
的时候 parseInt('08')
在IE浏览器中却返回0
在Chrome、firefox中都能正常的得到8。真是奇怪啦,当时郁闷了很久。这是一个很大的坑,所以以后再处理这种问题的时候一定要小心咯。
经过查资料 发现parseInt(string, radix)
具备2个参数。W3C解释如下:
- string 必需。要被解析的字符串。
- radix
可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间。
如果省略该参数或其值为 0,则数字将以 10 为基础来解析。如果它以 “0x” 或 “0X” 开头,将以 16 为基数。
如果该参数小于 2 或者大于 36,则 parseInt() 将返回 NaN。
把第2个参数设置为10表示待转换的为10进制数。 所以这个问题解决了。
var c=parseInt('08',10); |