数据类型的转换
数据类型分为隐式转换和强制转换
转换为数值型
转换为字符串
- 先将所有的数值都转换为10进制在转换为字符串
转换为布尔值
var a="";
var a=0;
var a=NaN;
var a=false;
var a=null;
var a=undefined;
//以上6种转换布尔值是false,其他都是true
1,数值转字符串
var a=9.6;
a=String(a); //强制转换,将a转换为字符串覆盖原有变量a
a=a+""; //利用隐式转换方式,没有强制转换,根据运算特征自动转换为字符串,隐式转换
// 隐式转换所使用的的转换方法是自动执行String(a);
2、数值转换为布尔值
var b=2;
console.log(Boolean(b); //true
//除了0以外所有的数值转换为布尔值都是true
var a=0;
consoel.log(Boolean(a)); //false
//0转换为布尔值是false
3、数值转换为对象
var a=0;
a=Object(a);//数值型对象,存储在堆中
1、字符串转换为数值
a=Number(a); //强制转换为数值类型
a=parseInt(a); //转换为整数
a=parseInt(a,2); //将字符串转换为2进制
a=parseFloat(a); //转换为浮点数,不能转换进制
var a="5a"; //字符串中如果有字符存在,转换后就变成NaN
var a=""; //空字符串转换为数值是 0
- 使用parseInt转字符串,从第一个数字字符开始到第一个字符类型为止转换为数值
- 这里如果使用number转换会直接显示NaN
2、字符串转换为布尔值
//仅空字符串转换为布尔值时,是false,除此之外全部是true
var str="";
str=Boolean(str);
console.log(str); //false
3、字符串转换为对象
var str="aaa";
str=Object(str); // 转换为字符串对象
console.log(str);
打印结果:
1、布尔转换为数值
//true转换为1,false转换为0
var b=true;
b=Number(b);
console.log(b); //1
2、布尔转换为字符
var a=true;
console.log(String(a)); //true
//转换后就是字符串true和false
3、布尔转换为对象
var a=true;
console.log(Object(a)); //Boolean{true}
//转换后就是布尔值对象