您的位置:首页 > Web前端 > JavaScript

JavaScript中的类型转换

2016-05-05 09:27 387 查看

显式转换

JS中做显示转换最简单的方法就是使用Boolean()、Number()、String()、Object()等方法。

Number("3");//返回一个数字3
String(false);//返回一个字符串"false"
Boolean([]);//返回一个布尔值true
Object(3);//返回new Number(3)


隐式转换

JS中某些运算符会作隐式的类型转换,如:

x + "";//等价于String(x)
+x;//等价于Number(x)。也可写为x-0
!!x;//等价于Boolean(x)


数字与字符串的精确转换

除了上述方法外,JS还提供了专门的函数和方法来做更加精细的数字与字符串之间的转换。

number-to-string

toFixed():根据小数点后指定位数将数字转换为字符串,它从不使用指数计数法。

toExponential():使用指数计数法将数字转换为指定形式的字符串,其中小数点前只有一位,小数点后的位数由参数决定。

toPrecision():根据指定的有效数字位数将数字转换为字符串

var n = 123.456789;
n.toFixed(2);//"123.46"
n.toExponential(3);//"1.235e+2"
n.toPrecision(7);//"123.4568"


Number类型的toString()方法可以接收表示转换基数的可选参数,若不指定,转换规则基于十进制。

var n = 17;
binary_string = n.toString(2);//转换为二进制"10001"
octal_string = "0" + n.toString(8);//转换为八进制"021"
hex_string = "0x" + n.toString(16);//转换为十六进制"0x11"


string-to-number

parseInt():解析整数。

parseFloat():解析整数和浮点数。

这两个函数都会跳过任意数量的前导空格,尽可能解析更多的字符串,并忽略后面的内容。如果第一个非空字符是非法的数字直接量,将最终返回NaN。

parseInt("3 hello");//3
parseInt(" 0xFF");//255
parseInt("$3");//NaN:整数不能以$开始
parseFloat(" 3.14  hello");//3.14
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: