JS 将 string 转换成为 number

来源:互联网 发布:notepad++ for mac 编辑:程序博客网 时间:2024/06/08 08:56

汇总一下各类方法:
1):parseInt
var x = parseInt("10"); // 10
带有两个参数:第一个是目标转换字符串,第二个用来指定将字符串转化为几进制的数字,并且radix的范围是(2~36)
parseInt(string, radix)

2):利用js变量弱类型转换,最近很喜欢用这种方式代码简洁

var a = "1000";typeof(   +a    )    //numbertypeof(   a-0   )    //numbertypeof(   a*1   )    //number

3):parseFloat 方法可以将对应的字符串转化为浮点类型的数字。
num.toFixed(2)可以四舍五入,保留两位小数

 var x = "2.446242342"  var num =parseFloat(x); //typeof(num)  number num = num.toFixed(2); // 输出结果为 2.45

我们可以用取巧的方法达到不保留两位小数的目的:
Math.floor(15.7784514000 * 100) / 100

4):Math.floor 的方式可以对字符和数字进行向下取整
Math.ceil(5/2)向上取整,有小数就整数部分加1

  var x = Math.floor("1000.01"); // 1000  var x = Math.floor(1000.01); // 1000  var x = Math.ceil(1000.01); // 1001  var x = Math.floor(1000.91); // 1000

5):Math.round 的方式可以对字符和数字进行四舍五入取整

    var x = Math.round("1000"); //1000 equivalent to round("1000",0)    var x = Math.round("1000.56"); // 1001     var x = Math.round("1000.23"); // 1000

6):Number()的强制类型转换与parseInt()和parseFloat()方法的处理方式相似,只是它转换的是整个值,而不是部分值。示例如下:

Number(false) 0Number(true) 1Number(undefined) NaNNumber(null) 0Number( "5.5 ") 5.5Number( "56 ") 56Number( "5.6.7 ") NaNNumber(new Object()) NaNNumber(100) 100
原创粉丝点击