JavaScript原始类型转换和进制转换
1.JavaScript转换包括:强制转换和基本转换
如:
var str = 'A',num=10,nu=null,t=true,und=undefined,x;
//注意:定义的x未被初始化;默认是undefined
强制转换:
Number(str);//输出:NaN 因为str不是数字
Number(undefined);//输出:NaN 因为str不是数字
Number(null);//输出0
Number(true);//输出1
Number(false);//输出0
String(num);//输出:“10”字符串
String(null);//输出:“null”字符串
String(undefined);//输出:“undefined”字符串
String(true);//输出:“true”字符串
Boolean(0);// false
Boolean("");空 false
Boolean(null);false
Boolean(undefined);false
非强制类型转换:(二进制,十进制,八进制,十六进制转换)
parseInt(str,16);//第二个参数指定原字符串进制;最终输出10进制格式的 10;
parseFloat(str);//NaN 非数字
num.toString(2);//输出:二进制的字符串 “1010”;
num.toString(16);//输出16进制 a
nu.toString();//报错;因为null和 undefined 值都无法转换
t.toString();//返回 “true”字符串
强制类型和基本转换方法区别:
1.强制类型转换是转换的整个值 而 基本转换是转换其中开头的一部分。
2.一般在不知道该变量类型到底是什么类型;可以使用强制类型转换
如:String(null),Boolean(null);因为强制类型转换可以转换任意类型变量