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

Posted yous

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了三个把值转换成数值类型的函数: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进制数 如果解析的内容里只有整数,解析成整数

 

以上是关于三个把值转换成数值类型的函数:Number() parseInt() parseFloat()的区别的主要内容,如果未能解决你的问题,请参考以下文章

Javascript数值转换(Number,parseInt,parseFloat)

JavaScript之类型转换

js-20170612-数据类型转换

js类型转换-字符串转整型浮点型方法强制类型转换等

数据类型转换

C#,字符串“Number”转换为数值等于多少?为啥用Convert。ToDouble()无法转换???