javascript显式类型的转换
显式类型转换
目的:为了使代码变得清晰易读,而做显示类型的转换
常使用的函数:Boolean(),String(),Number()或Object()
如:Nunber(5) //5
String(true) //"string"
Object(3) //new Numer(3)
注意除null,undefined之外所有的值都具有toString()方法
null,undefined转换成对象会出现错误
“+”号和“!”也可用于类型的转换
如:
x+"" //"x"等价于String(x)
+x //等价于Number(x)同时也相当于x-0;
!!x //等价于Boolean(x),注意两个叹号
Number类型的使用toString()接受转换基数可将数字转换成不同进制的数(转换基数如2,8,10,16,32)
数字到字符的转换当有浮点数需要保留位数的时候,js提供了一系列转换函数可供使用
toFixed()可给参数n表示表示小数点后面保留n位,
toExponential()使用指数计数法转换为指定的字符串,且小数点前只有一位,小数点后由参数n决定
toPrecision()函数根据有效位数n将原数字转换成字符串,如果n小于正数部分的位数则转换成指数形式
注意:Number()的转换只能基于十进制进行转换
js提供了parseInt(),与parseFloat()两个函数用于转换更为复杂含有进制的数字
parseInt()和parseFloat()会跳过任意数量的前面空格解析更多符合条件的数值,并忽略后面的如果parseInt()转换时前面是一个非空格非数值的字符结果最终是NaN
parseInt()还可接收两个参数,第一个为要转换的字符,第二个为转换的基数