转换成字符串类型
(1) toString() 方法
var n = 18;
console.log(n.toString()); // Number类型转换成字符串类型
var flag = true;
console.log(flag.toString()); // Boolean 类型转换成字符串类型
注意:null,undefined没有toString()方法
(2) String() 函数
没有toString() 方法的null,undefined可以采用这种方式
var a = null;
console.log(String(a)); // 输出null
(3) 使用‘+’进行字符串拼接
var a = 13;
console.log(a + '');
var num = 14;
console.log('土方' + num);
注意:‘+’两边是数值类型,‘+’表示数值相加;
有一边是字符串类型,则‘+’表示字符串连接
转化成数值类型
(1) Number()
var isRight = true;
console.log(Number(isRight)); // 返回1
var str = 'hi';
console.log(Number(str)); // 无法转换为数值,返回NaN
var s = '12ab';
console.log(Number(s)); // 字符串中有一个不是数字返回NaN
(2) parseInt()
parseInt('123abc'); // 遇到第一个非字符停止转换,返回123
parseInt('abc123'); // 第一个是非字符,返回NaN
注意:parseInt() 无法把Boolean类型转化成数值类型,返回NaN
(3) parseFloat()
与parseInt() 用法基本一致,也不能够转换布尔类型,它把字符串解析成浮点数,并且parseFloat() 遇到第二个小数点或非数字才停止转换
var n = '12.3.45ac';
parseFloat(n); // 返回12.3
(4) 使用‘+’、‘-’
var str = '123';
console.log(+str); // 输出123
console.log(-str); // 输出-123
var s = '123abc';
console.log(s - 0); // 输出NaN
console.log(s + 0); // 输出123abc0
注意:此处+0和-0的区别
转换成布尔类型
使用Boolean()
var a = 123;
Boolean(a); // 返回true
注意:记住转换成false的五种情况:0 空字符串’’ null undefined NaN