强制类型转换,String()
toString()
大多数情况,不用传参数1
调用toString(), 该方法不会影响原变量,只会返回结果
null 和 undefined 这两个值没有toString() 方法
var num = 10;
var hasValue = true;
// 将上面两个变量转换为 字符串形式
console.log(num.toString()); //返回 '10';
console.log(hasValue.toString()); //返回 'true'
//检测是否影响 原来的变量值
console.log(num);//返回 数字 10
console.log(hasValue);//返回 true
String()
需要传参数,把需要被转换的变量当作参数,可以转换null 和undefined
var num = 10;
var hasValue = true;
var empty = null;
var value;
// 将上面四个变量转换为 字符串形式
console.log(String(num));//返回 '10'
console.log(String(hasValue));//返回 'true'
console.log(String(empty));//返回 'null'
console.log(String(value));//返回 'undefined'
在转换 number 和 boolean 时,String()就是后台调用了toString() 方法,因为Number&Boolean有toString() 方法。
但是对于 null 和undefined时,他们俩没有toString() 方法,后台会把 null 和 undefined 转换为 ‘null’ ‘undefined’
将十进制等数字转换为其他进制等 数字字符串时,我们可以传个指定技术,2,8,16。默认的指定基数是 10。 ↩︎