类型转换:
1.三元表达式:
var a = 1;
var b = a == 1 ? '你答对了' : '你答错了';
console.log(b)//你答对了
/*
a == 1 ? '你答对了' : '你答错了';
如果a 等于 1 则b的值 赋值为 你答对了
否则赋值为 你答错了
2.Number()数值转换:
Number('123');//123
Number('123abc');//NaN
Number('abc123');//NaN
Number(' 123');//123
Number('123 789');//NaN
Number('abc');//NaN
Number('true');//1
Number('false');//0
3.parseInt()转换整数:
只能提取前面的数字后面的数字找不到了
如果数据类型的开头不是数字,就转换不了数字了
它可以去除数字前面的空格,但是当最后一个连续的数字后面不再是数字他就不往后找了,直接删除掉了
parselnt转换不了布尔类型和null类型
他只能转换,开头是数字的字符串类型和数值类型
parseInt('123');//123
parseInt('123.12');//123
parseInt('123abc');//123
parseInt('abc123');//NaN
parseInt('123 789');//123
parseInt(' 123');//123
parseInt('abc');//NaN
4.parseFloat转换成浮点数:
和parseInt的不同点在于 它可以保留小数点后面的数字
parseFloat('3.1415926');//3.1415926
parseFloat('3.1415926abc');//3.1415926
parseFloat(' 3.1415926');//3.1415926
parseFloat('3.1415926 789');//3.1415926
5.toFixed()保留小数点后几位:
用法:变量名.toFixed() 满足四舍五入,转换后的数据类型是字符串型
var number = 3.1415;
number.toFixed(3);//3.142
number.toFixed(2);//3.14
6.String()字符串转换:
String(456);//456
String(null);null
String(NaN);//NaN
String(undefined);//undefined
String(true);//true
String(false);//false
String([123,789]);//123,789
String({});//[object,Object]
7.Boolean()布尔转换:
是false的值:0,' ',NaN,null,undefined
其他都为true
8.Number转换数组:
var arr = [123,789];
console.log(Number(arr));//NaN
var arr = [123,789];
console.log(String(arr));//[123,789]