JavaScript中string转换成number介绍
作者:bea
JavaScript中,可以通过以下3种方法来将string值转换成number: 1.调用Number()来对string进行值类型转换。 2.parseInt()。 3.parseFloat()。 Number() 使用Number()函数来对string进行强制类型转换是最直接的做法。不过,这种做法有一个局限性:如果字符串截去开头和结尾的空白字符后,不是纯数字字符串,那么最终返回结果为NaN。David Flanagan的JavaScript – The Defi
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。
代码如下:
var a = " 42";
var b = " 42mm";
var c = "0xff";
var d = "42.34";
console.log(Number(a));//42 console.log(Number(b));//NaN console.log(Number(c));//255 console.log(Number(d));//42.34
parseInt()
parseInt()函数可以将字符串转换成一个整数,与Number()函数相比,parseInt()函数不仅可以解析纯数字字符串,也可以解析以数字开头的部分数字字符串(非数字部分字符串在转换过程中会被去除)。值得注意的是,当parseInt()函数所解析的是浮点数字符串时,取整操作所使用的方法为“向下取整”(truncate)。
除了字符串作为第一个参数,parseInt()函数还可以接受2到36之间的任意整数作为第二个参数,用于指定转换过程中的进制数。
代码如下:
var b = " 42mm";
var c = "0xff";
var x = "-12.34";
var y = "15.88";
var z = "101010";
console.log(parseInt(b));//42 console.log(parseInt(x));//-12 console.log(parseInt(y));//15 console.log(parseInt(c));//255 console.log(parseInt(z, 2));//42 console.log(parseInt(".1"));//NaN
parseFloat()
与parseInt()一样,parseFloat()也可以解析以数字开头的部分数字字符串(非数字部分字符串在转换过程中会被去除)。与parseInt()不同的是,parseFloat()可以将字符串转换成浮点数;但同时,parseFloat()只接受一个参数,且仅能处理10进制字符串。
代码如下:
var c = "0xff";
var d = "42.34";
console.log(parseFloat(c));//0, because "0xff" start with 0 console.log(parseFloat(d));//42.34 console.log(parseFloat(".1"));//0.1
有用 | 无用
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。
代码如下:
var a = " 42";
var b = " 42mm";
var c = "0xff";
var d = "42.34";
console.log(Number(a));//42 console.log(Number(b));//NaN console.log(Number(c));//255 console.log(Number(d));//42.34
parseInt()
parseInt()函数可以将字符串转换成一个整数,与Number()函数相比,parseInt()函数不仅可以解析纯数字字符串,也可以解析以数字开头的部分数字字符串(非数字部分字符串在转换过程中会被去除)。值得注意的是,当parseInt()函数所解析的是浮点数字符串时,取整操作所使用的方法为“向下取整”(truncate)。
除了字符串作为第一个参数,parseInt()函数还可以接受2到36之间的任意整数作为第二个参数,用于指定转换过程中的进制数。
代码如下:
var b = " 42mm";
var c = "0xff";
var x = "-12.34";
var y = "15.88";
var z = "101010";
console.log(parseInt(b));//42 console.log(parseInt(x));//-12 console.log(parseInt(y));//15 console.log(parseInt(c));//255 console.log(parseInt(z, 2));//42 console.log(parseInt(".1"));//NaN
parseFloat()
与parseInt()一样,parseFloat()也可以解析以数字开头的部分数字字符串(非数字部分字符串在转换过程中会被去除)。与parseInt()不同的是,parseFloat()可以将字符串转换成浮点数;但同时,parseFloat()只接受一个参数,且仅能处理10进制字符串。
代码如下:
var c = "0xff";
var d = "42.34";
console.log(parseFloat(c));//0, because "0xff" start with 0 console.log(parseFloat(d));//42.34 console.log(parseFloat(".1"));//0.1
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- jQuery中:last-child选择器用法实例
- jQuery中:nth-child选择器用法实例
- jQuery中:first-child选择器用法实例
- jQuery中复合属性选择器用法实例
- javascript实现左右控制无缝滚动
- javascript比较两个日期的先后示例代码
- jQuery中[attribute*=value]选择器用法实例
- jQuery中[attribute^=value]选择器用法实例
- jQuery中[attribute=value]选择器用法实例
- 修复bash漏洞的shell脚本分享
- 分享一个常用的javascript静态类
- 兼容Firefox的Javascript XSLT 处理XML文件
- 使用jquery+CSS实现控制打印样式
- 浅谈javascript中字符串String与数组Array
- jQuery中[attribute!=value]选择器用法实例
- JavaScript中的Primitive对象封装介绍
- JavaScript中的值类型转换介绍
- javascript实现滑动解锁功能
- JavaScript中number转换成string介绍