数据类型转换分为强制转换和隐式转换两种
强转字符串:
1.string(a)-----强制转换为字符串
var str="你好"; 纯字符----------------你好
var str="12.34"; 纯数字-----------------12.34
var str="12 34"; 数字中有空格------------12.34
var str="1a"; 部分数字+部分字符-------1a
var str=false; 布尔值true/false-------false
var str=null; 空值-------------------0 var
var str=undefined; 未定义-----------------NaN
var str=NaN; not a number----------NaN
var str=""; 空字符串---------------(空值)
var str=" "; 空格值-----------------(空值)
var str=[1,5,2,6]; 数组array--------------1,5,2,6
var str={
a:5,
b:786,
c:"你是谁"
}; 对象---------------[Object,Object]
a=a+""; 利用隐式转换方式,没有强制转换,根据运算特征自动转换为字符串,隐式转换
2.数据.toString(进制)/ 数据.toString()-----强制转换为字符串
var num=10;
var a=num.toString(2);
console.log(a);-------------1010
console.log(typeof num);---Number
console.log(typeof a);-----String
注意:null和undefined是不能转换的
toString可以将任何数字转换为任意进制,但括号内进制必须大于等于2并且小于等于36
如: 255十六进制就是ff
3. 数据.toFixed(小数点后几位)----将数值转换为字符串,并且按照小数点四舍五入保留位数,
但是有精度误差(即会有0.09999999·····误差)
var num=10.356;
var a=num.toFixed(1);
console.log(a);-----10.4
var num=10.35;
var a=num.toFixed(1);
console.log(a);-----10.3
4. a.toExponential(小数点后几位);------返回一个字符串,该字符串以指数计数法表示当前数值
var a=1234.56;
var b=a.toExponential(2);
console.log(b);------1.23e+3
var a = 556789;
var b=a.toExponential(3)
console.log(b);-------5.568e+5
5. a.toPrecision();--------在对象的值超出指定位数时将其转换为指数计数法
var c = 13.3714;
var d=c.toPrecision(3);
console.log(d);-------13.4
var c = 12345.67879;
var d=c.toPrecision(7);
console.log(d);-----12345.68