三个把值转换成数值类型的函数:Number()、 parseInt()、 parseFloat()的区别

一 、Number()

Number()可以把任意值转换成数值,如果要转换的字符串中有一个不是数值的字符,返回NaN 例如:

var num1 = Number(true); //true返回1 false返回0

var num2 = Number(undefined); //返回NaN

var num3 = Number("hello"); //返回NaN

var num4 = Number(" "); //如果是空字符串返回0

var num5 = Number(123); //返回123,如果是数字,简单返回

var num6 = Number("123abc"); //NaN

var num7 = Number("abc123"); //NaN

二、parseInt()

1、parseInt()把字符串转换成整数

var num1 = parseInt("12.3abc"); //返回12,如果第一个字符是数字会解析知道遇到非数字结束

var num2 = parseInt("abc123"); //返回NaN,如果第一个字符不是数字或者符号就返回NaN

var num3 = parseInt(""); //空字符串返回NaN,Number("")返回0

var num5 = parseInt("10"); //返回10

var num4 = parseInt("0xA"); //返回10

2、parseInt()可以传递两个参数,第一个参数是要转换的字符串,第二个参数是要转换的进制

 var num1 = parseInt("A",16); //A按16进制解析是10

var num2 = parseInt("10",10); //10按10进制解析10

var num3 = parseInt("10",16); //10按16进制解析16

var num4 = parseInt("10",8); //10按8进制解析是8

var num5 = parseInt("10",2); //10按2进制解析是2

var num6 = parseInt("10",3); //10按3进制解析是3

三、parseFloat()

1、parseFloat()把字符串转换成浮点数

2、parseFloat()和parseInt非常相似,不同之处在与 parseFloat会解析第一个. 遇到第二个.或者非数字结束 parseFloat不支持第二个参数,只能解析10进制数 如果解析的内容里只有整数,解析成整数

 

posted @ 2018-04-13 22:09  珺瑶  阅读(726)  评论(0编辑  收藏  举报