Javascript中parseInt("08")返回的值会是什么,0还是8 ?如果你的回答是8 ,那么你就应该注意一下将会提到的这个不算是问题的问题。
以前在项目中遇到这个问题,在日期处理的时候需要对用户选择的月份(两位的字符串)进行转化和计算,然而选择8月或9月时计算出的结果是错误的,后来调试的时候发现parseInt函数引起的。parseInt("01")到parseInt("07")都能返回正确的数值,而parseInt("08")和parseInt("09")返回的值却都是0。
查找了JS的文档后发现这个问题发生的原因是前面的"0",parseInt方法有一个可选参数来表示数字的进制,以"0"作为首字符的字符串会被JS识别为八进制数并将没有指定数字进制参数的参数值默认为8,从而以八进制来解析字符串,而"08"和"09"都不是合法的八进制数,所以被解析为0。
实际上,这是个不注意细节引起的问题,显式设置进制参数的parseInt根本不会出现这个问题,parseInt("08",10)或parseInt("09",10)都能返回正确的数值。另外,parseFloat不会存在这个问题。
转载自:http://blog.sina.com.cn/s/blog_4fd11d0a01008ity.html
分享到:
相关推荐
parseInt(number,type)这个函数后面如果不跟第2个参数来表示进制的话,默认是10进制。比如说parseInt(“010”,10)就是10进制的结果:10,parseInt(“010”,2)就是2进制的结果:2,parseInt(“010”,8)就是8进制的...
javascript parseInt 函数分析(转).docx
javascript的parseInt函数 javascript的parseInt函数,大家都知道是干啥的 但你知道 parseInt(“07”) 返回多少 ? parseInt(“08”) 又返回多少 ? 正确答案是 parseInt(“07”) 返回8 parseInt(“08”) 返回0 你知道...
JS中有三种函数可以将非数值转换成数值:Number()、parseInt()和parseFloat()。接下来通过本文详细的给大家介绍JS转换数值函数Number()、parseInt()、parseFloat()的实例代码,感兴趣的朋友一起看看吧
js parsefloat parseint JavaScript提供了3个显式的类型转换函数,分别是eval()、parseInt()和parseFloat()。 eval()函数:将字符串表达式转换成数字值。例如,语句total=eval(“432.1*10”)...
主要介绍了Javascript中使用parseInt函数需要注意的问题,本文讲解了parseInt函数在IE8下可能会返回0值的兼容问题解决方法,需要的朋友可以参考下
javascript parseInt与Number函数的区别.docx
parseInt(1.13*100),实际返回值是112。直接看代码吧 代码如下: <head> [removed] function test(){ var thisvalue = 0; thisvalue=yuanToFen($(“#inp”).val()); alert(thisvalue); } /*元转分*/ ...
主要介绍了JavaScript在Android的WebView中parseInt函数转换不正确问题解决方法,因转换的字符串数字都以0开头,导致parseInt函数在浏览器和Android WebView中转换结果不一样,本文给出了解决方法,需要的朋友可以参考下
但是parseInt(“08”, 10)是可以返回8的。... 核心函数 实现版本 Navigator 2.0: If the first character of the string specified in parseInt(string) cannot be converted to a number, returns “NaN” on So
本文实例讲述了javascript中parseInt()函数的定义和用法。分享给大家供大家参考。具体分析如下: 此函数可以解析一个字符串,并返回一个整数。 语法结构: 代码如下:parseInt(string, type) 参数列表: 参数 描述 ...
javascript parseInt() 函数的进制转换注意细节.docx
JavaScript parseInt()与Number()区别案例详解 学习目标: parseInt()、Number()这两个函数用到最多的地方就是把一个字符串转换成数据类型,那么他们都有哪些区别? 学习内容: parseInt()函数将给定的字符串...
javaScript parseInt字符转化为数字函数使用小结.docx
47.当在超链接中调用JS函数时用:(javascript:)来开头后面加函数名 48.在老的浏览器中不执行此JS:<!-- //--> 49.引用一个文件式的JS:<script type="text/javascript" src="aaa.js"> 50.指定在不支持脚本的浏览器显示...
另外还有一点比较重要,即JavaScript支持很多内部的函数,诸如类Array的方法eval()、parseInt()和sort()等。客户端JavaScript还定义了其他函数,如document.write()和alert()。在JavaScript中,完全可以像使用用户...