一.获取变量数据类型
通过typeof判断变量的数据类型
var num = 10;
console.log(typeof num); // number类型
var str = 'pink';
console.log(typeof str); // string类型
注意:通过prompt取过来的值是字符型的
var age = prompt('请输入您的年龄');
console.log(typeof age); // string
二.数据类型的转换
通常会实现3种方式的转换
- 转换为字符串类型
- 转换为数字型
- 转换为布尔型
1.转换为字符串
方式 | 说明 | 案例 |
---|---|---|
toString() | 转成字符串 | var num=1;alert(num.toString()) |
String()强制转换 | 转成字符串 | var num=1;alert(num.String(num)) |
加号拼接字符串 | 和字符串拼接的结果都是字符串 | var num=1;alert(num+’我是字符串‘) |
toString()和String()使用方式不一样:变量.toString() 和 String(变量)
2.转换成数字型(重点)
方式 | 说明 | 案例 |
---|---|---|
parseInt(String) 函数 | 将string类型转换成整数数值型 | parseInt(‘78’) |
parseFloat(String) 函数 | 将string类型转换成浮点数数值型 | parseInt(‘78.21’) |
Number()强制转换函数 | 将string类型转换成数值型 | Number(‘12’) |
js隐式转换(- * /) | 利用算术运算隐式转换为数字型 | ’12‘-0 |
console.log(parseInt('3.14')); // 输出3
console.log(parseInt('3.94')); // 输出3
console.log(parseInt('120px')); // 输出120
console.log(parseInt('rem120px')); // 输出NaN
console.log(parseFloat('3.14')); // 输出3.14
console.log(parseFloat('120px')); // 输出120
console.log(parseFloat('rem120px')); // 输出NaN
//利用Number(变量)
var str = '123';
console.log(Number(str)); //输出123
console.log(Number('12')); // 输出12
//利用了算术运算 - * / 隐式转换
console.log('12' - 0); //输出12
console.log('123' - '120'); //输出3
console.log('123' * 1); //输出123
3.转换为布尔型
方式 | 说明 | 案例 |
---|---|---|
Boolean()函数 | 其他类型转成布尔型 | Boolean(‘true’) |
- 代表空、否定的值会被转换成false,如‘ ‘,0,NaN,null,undefined
- 其余值都会被转换为true