数据类型转换
弱类型
变量的类型是由数据来决定的。
通过一个函数或运算符验证变量的数据类型;
函数:typeof(变量名)
运算符:typeof 变量名
返回值:运行代码后得到的数值
1.隐藏式类型转换
加,减,乘,除
不同类型数据在运算过程中会自动进行转换
例如:
number+string:将number(数组)转化为string(字符串)
string+boolean:将boolean(布尔值)转换为string
“Hello”+true:Hellotrue
number+boolean:将boolean转换为number
1+true:2 (true=1)
1+fales:1 (false=0)
boolean+boolean:将boolean值转换为1或0
true+false:1
true+true:2
2.强制类型转换*
(1)a:toString()
作用:把任意类型转化为 字符串
语法:var 变量名.toString(数据)
例:
var num=true;
var n=num.toString();
console.log(typeof n);
(2)b:parseInt()
作用:把任意数据转换为整数
语法:var 变量名=parseInt(数据)
注意:
1.把内容转化为是整数, 小数 字符串内容式数字 转整数。
2.如果第一个字符就是非整数字符,结果为NAN(Not a Number),不是一个数字
例:
var aa="12";
var str=parseInt(aa);
console.log(typeof str);
var aa2=12.33;
var str2=parseInt(aa2);
console.log(str2);//12
consol.log(typeof str2);
var aa3="12aa";
var str3=parseInt(aa3);
console.log(str3);//12
var aa4="12aa44"
var str4=parseInt(aa4);
console.log(str4);//12
var aa5="aa12";
var str5=parseInt(aa5);
console.log(str4)//NaN 不是数字
(3)c:parseFloat()
作用:将制定数据转换为小数(浮点数)
例:
var result=parseFloat("33.33");
结果为33.33
var result=parseFloat("3.3Hello");
结果为:3.3
var result=parseFloat("Hello3.3");
结果为:NaN
var result=parseFloat("3.");
结果为:3
var result=parseFloat("3.0");
结果为:3
var result=parseFloat(".33");
结果为0.33
(4)d:Number()
作用:将一个 string 解析为 number
注意:转化为数字 不能包含非数字如果包含除了非法字符,则返回NaN
var result = parseFloat(“3.3Hello”);
console.log(result);//3.3
//不包含非数字字符
var result = Number("3.3Hello");
console.log(result);//NaN
var result = Number("3.3");
console.log(result);//3.3