天为大家分享的前端技术文章是js的函数parseInt(string [ , radix])的具体实现和使用方法。这个函数在平常的项目开发中还是很常用的。希望这篇文章对大家有所帮助。
语法:parseInt(string [ , radix])
注:[]中的代表可选。
字符串中的第一个数字才会被返回。
字符串前后可以存在空格。
参数解析:
string:必须。需要被解析的值。
radix:可选。表示要解析的数字的基数,取值为2-36,大于36或者小于2,都将返回非数字NaN。
1. 默认值为0,或者设置该参数为10,或者不设置该参数,都将以十进制为基础来解析。一般情况下,可省略不写。
2. 若string是以‘0x’或者‘0X’开头的,将以十六进制为基础来解析。
3. 若string是以‘0’,将以八进制为基础来解析,在ECMA5中,以十进制来解析。
我们先看下ECMA是如何规范parseInt(string [ , radix])这个函数的,并给出了详细的执行步骤,看起来一目了然。不过全是英文的,需要有点英语基础,相信做开发的程序员们,英语都棒棒的。
看完了以上parseInt(string [ , radix])函数的执行步骤,相信你对她有个不一样的认识了,与parseInt(string [ , radix])的关系更近一层了。那么,我们再来看一下parseInt的源码。这列只列出了部分源码,需要的同学们可以查看一下V8源码。相信这部分的代码并不难理解。
有了以上对parseInt的执行步骤和源码的基础,我们通过实例详细的了解下parseInt具体的使用方法,便于我们在实践开发中能够熟练使用,避免不必要的坑。
1. 只有字符串的第一个字符是数字或者是+-(后面紧跟数字,如(-2)(+2)),才能正确返回数字,否则返回NaN。请看上面的实例。
2. 如果第一个字符是数字或者者是+-(后面紧跟数字,如(-2)(+2)),parseInt解析完第一个会继续去解析第二个,直到解析完所有字符或者遇到非数字字符。如(2.01)会被解析为2,当parseInt接下到’.’时就会停止解析。
领取专属 10元无门槛券
私享最新 技术干货