JavaScript 字符串转为数字

js中字符串转为数字主要4种,分别为转换函数,强制转换,js变量弱类型转换,正则表达式。

 

1、转换函数

  JS中提供了两个转换函数parseInt()和parseFloat(),parseInt()将值转换为整数,parseFloat()将值转换为浮点数。只有对String类型调用时,这两个方法才起作用。对于其他类型,则返回的都是NaN(Not a Number)

 

1 parseInt("1234blue");   //returns   1234
2 parseInt("0xA");   //returns   10
3 parseInt("22.5");   //returns   22
4 parseInt("blue");   //returns   NaN
1 parseFloat("1234blue");   //returns   1234.0
2 parseFloat("0xA");   //returns   NaN
3 parseFloat("22.5");   //returns   22.5
4 parseFloat("22.34.5");   //returns   22.34
5 parseFloat("0908");   //returns   908
6 parseFloat("blue");   //returns   NaN

 

2、强制转换

可以使用强制类型转换(type casting)处理转换值的类型。使用强制类型转换可以访问特定的值,即使它是另外一种类型的值。

Number(value) 把给定的值转换为数字(可以是整数或浮点数)。

Number()强制转换与parseInt(),parseFloat()方法的处理方式类似,它转换的是整个值,而不是部分值。

1 Number(false)                  0
2 Number(true)                   1
3 Number(undefined)              NaN
4 Number(null)                   0
5 Number( "5.5 ")                5.5
6 Number( "56 ")                 56
7 Number( "5.6.7 ")              NaN
8 Number(new   Object())         NaN
9 Number(100)                    100  

3、js变量弱类型转换

利用js弱类型的特点,只进行了算术运算,实现字符串到数字的类型转换。这种方法不推荐

1 var   str= '012.345 ';
2 var   x   =   str-0;
3 x   =   x*1;

4、正则表达式

利用正则表达式对符合要求的字符串进行提取,获取字符串中的数字。

 

posted @ 2016-05-09 09:59  Tome.Wong  阅读(1900)  评论(0编辑  收藏  举报