美文网首页网页前端开发学习必备教程
JS中的数据类型转换:String转换成Number的3种方法

JS中的数据类型转换:String转换成Number的3种方法

作者: WEB开发李家靖 | 来源:发表于2018-05-29 14:51 被阅读1次

今天有个学员问了个关于数据类型转换的问题,我觉得这个是可以给大家说一下的。

JavaScript中,可以通过以下3种方法来将string值转换成number:

1.调用Number()来对string进行值类型转换。
2.parseInt()。
3.parseFloat()。

Number()

使用Number()函数来对string进行强制类型转换是最直接的做法。不过,这种做法有一个局限性:如果字符串截去开头和结尾的空白字符后,不是纯数字字符串,那么最终返回结果为NaN。David Flanagan的JavaScript – The Definitive Guide 6th edition, 3.8.2节提到,用Number()函数来进行string-to-number转换时,函数只接受10进制字符串,但测试结果表明事实并非如此,Number()函数可以接受”0xff”作为参数并将其转换成数值255。

parseInt()

parseInt()函数可以将字符串转换成一个整数,与Number()函数相比,parseInt()函数不仅可以解析纯数字字符串,也可以解析以数字开头的部分数字字符串(非数字部分字符串在转换过程中会被去除)。值得注意的是,当parseInt()函数所解析的是浮点数字符串时,取整操作所使用的方法为“向下取整”(truncate)。

除了字符串作为第一个参数,parseInt()函数还可以接受2到36之间的任意整数作为第二个参数,用于指定转换过程中的进制数。

parseFloat()

与parseInt()一样,parseFloat()也可以解析以数字开头的部分数字字符串(非数字部分字符串在转换过程中会被去除)。与parseInt()不同的是,parseFloat()可以将字符串转换成浮点数;但同时,parseFloat()只接受一个参数,且仅能处理10进制字符串。

所以我们平时方便使用,还是用parseInt() 比较多也比较好避免错误。

还没关注的长按下面二维码关注一下吧,每天更新更多新内容。

相关文章

网友评论

    本文标题:JS中的数据类型转换:String转换成Number的3种方法

    本文链接:https://www.haomeiwen.com/subject/kpcajftx.html