javascriptparseInt函数分析(转)

网络编程 JavaScript 基础知识 分类:[default] 更新日期: 2015-10-21
javascript的parseInt函数的一些问题分析
javascript的parseInt函数
javascript的parseInt函数,大家都知道是干啥的
但你知道
parseInt("07") 返回多少 ?
parseInt("08") 又返回多少 ?
正确答案是
parseInt("07") 返回8
parseInt("08") 返回0
你知道问题在哪?
其实,这个问题可能大家都没想过吧。
用javascript的parseInt函数时,
parseInt("08")或者parseInt("09")返回的居然是0,
而parseInt("01")...parseInt("07")都是正确的。
为什么这样呢?
一开始很难理解,后来发现出现这个问题的原因是当在前面有"0"时,
javascript的debugger会认为这是一个八进制数,
而"08"和"09"不是一个合法的八进制数,
所以导致了那个问题,但是parseFloat不会存在这个问题。
javascript参考中parseInt()函数是如此描述:
parseInt 方法
返回由字符串转换得到的整数。将字符串转换成整型。
parseInt(numString, [radix])
parseInt的参数radix:
可选项。在 2 和 36 之间的表示 numString 所保存数字的进制的值。如果没有提供,则前缀为 '0x' 的字符串被当作十六进制,前缀为 '0' 的字符串被当作八进制。所有其它字符串都被当作是十进制的。
因此,如果使用parseInt("08",10)或者parseInt("09",10),
通知javascript解释器使用十进制来解析就可以得到你要的数字。
附:
parseInt("abc") // 返回 NaN。
parseInt("12abc") // 返回 12。

> 本站内容系网友提交或本网编辑转载,其目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请及时与本网联系,我们将在第一时间删除内容!

相关文章
  • Python中在脚本中引用其他文件函数的实现方法
    下面小编就为大家带来一篇Python中在脚本中引用其他文件函数的实现方法.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧在导入文件的时候,Python只搜索当前脚本所在的目录,加载(entry-point)入口脚本运行目录和sys.path中包含的路径例如包的安装地址.所以如果要在当前脚本引用其他文件,除了将文件放在和脚本同一目 ...
  • php项目开发中用到的快速排序算法分析
    这篇文章主要介绍了php项目开发中用到的快速排序算法,结合实例形式详细分析了php快速排序的原理与使用方法,需要的朋友可以参考下本文实例讲述了php项目开发中用到的快速排序算法.分享给大家供大家参考,具体如下: 实际上在,做web开发,比较少遇到使用一些算法之类的,毕竟不是做搜索引擎,也不是写底层(比如写个类似于mysql这样的数据库,里面需要自己实现排序算 ...
  • .NET实现简易的文件增量备份程序
    这篇文章主要介绍了.NET实现简易的文件增量备份程序,需要的朋友可以参考下.Net中提供了许多方便使用的方法,包括在处理文件中查找文件.拷贝文件等,今天实现的是通过简易的程序实现增量的备份文件. 首先需要的是选择备份源文件路径SourcePath和备份目标文件路径DestinationPath,然后通过StopWatch统计拷贝所耗费的时间.(注意:使用St ...
  • jQuery如何用正则表达式验证手机号、身份证号、中文名称
    这篇文章主要介绍了jQuery如何用正则表达式验证手机号.身份证号.中文名称 的相关资料,需要的朋友可以参考下数字判断方法:isNaN()函数 test()方法 判断字符串中是否匹配到正则表达式内容,返回的是boolean值 ( true / false ) // 验证中文名称 function isChinaName(name) { var pattern ...
  • 正则表达式单行、多行模式简介(使用说明)
    正则表达式单行、多行模式简介(使用说明)
    我们今天继续讨论下,它的单行,多行模式使用,及容易出现错误地方.单行,多行模式,都是正则表达式的模式修饰符里面出现的参数继上几篇正则表达式相关说明(详情:正则表达式 ),我们今天继续讨论下,它的单行,多行模式使用,及容易出现错误地方.单行,多行模式,都是正则表达式的模式修饰符里面出现的参数.目前常用正则表达式都有该使用选项,如:javascript 正则表达 ...
  • 正则表达式、分组、子匹配子模式、非捕获子匹配子模式
    正则表达式、分组、子匹配子模式、非捕获子匹配子模式
    前面我们知道正则表达式有很多元字符表示匹配次数量词,都是可以重复匹配前面出现的单个字符次数,需要的朋友可以参考下前面我们知道正则表达式有很多元字符表示匹配次数(量词),都是可以重复匹配前面出现的单个字符次数.有时候,我们可能需要匹配一组多个字符一起出现的次数.这个时候,我们需要分组了.就是用小括号来括起这些字符,指定子表达式(也叫做分组).然后你就可以指定这 ...
猜你喜欢