本文摘自阮一峰JavaScript标准参考教程--http://javascript.ruanyifeng.com/grammar/number.html
JavaScript里有很多与数值相关的操作方法,对于初学者来说很每一个看起来似乎都很简单,但是记住甚至要完全掌握却似乎不是那么容易,最好的办法就是把它们一一罗列出来,写下来,每隔一段时间练习一下,看一下。下面我就把一些常用的全局方法罗列一下。
1、parseInt方法
首先我们把它的英文全称给弄明白,parse--"解析"的意思,Int--Integer,“整数”的意思,连起来就是“解析为整数”的意思。parseInt方法可以将字符串或小数转化为整数。如果字符串头部有空格,空格会被自动去除。

这里要注意的是,parseInt(1.23)不是遵循四舍五入的规则,也就是说即使小数超过0.5,它一样只返回1。
将字符串转为整数的时候,是一个个字符依次转换,如果遇到不能转化为数字的字符,就不再进行下去,返回已经转好的部分

这里要注意的是,最后一行的0xf00之所以可以转为数字,因为如果开头两个字符是0x或0X,parseInt将其视为十六进制数。
如果字符串的第一个字符不能转化为数字(正负号除外),返回NaN。

parseInt方法还可以接受第二个参数(2到36之间),表示被解析的值的进制。这意味着,可以用parseInt方法进行进制的转换。

如果第二个参数不是数值,会被自动转为一个整数。通过,这个整数只有在2到36之间,才能得到有意义的结果,超出这个范围,则返回NaN。如果第二个参数是0、undefined和null,则直接忽略。

2、parseFloat方法
parseFloat方法用于将一个字符串转为浮点数。
如果字符串包含不能转化为浮点数的字符,则不再进行转化,返回已经转好的部分。

上面四个表达式都返回3.14。
parseFloat方法会自动过滤字符串前导的空格。如果第一个字符不能转化为浮点数,则返回NaN。

这使得parseFloat的转换结果不同于Number函数。

网友评论