要把一个值转换为一个字符串有两种方法:toString()方法和转型函数String()。
toString()方法
数值、布尔值、对象、字符串值(每个字符串都有一个toString()方法,该方法返回字符串的一个副本)都有toString()方法,但null和undefined值没有这个方法。
var age = 11; var ageAsString = age.toString(); //"11" var found = true; var foungAsString = found.toString(); //"true" var a = null; var b = a.toString(); //Uncaught TypeError: Cannot read property ‘toString‘ of null
多数情况下,调用toString()方法不必传递参数,但是在调用数值的toString()方法时可以传递一个参数:输出数值的基数。默认情况下,toString()方法以十进制格式返回数字的字符串表示。通过传递基数,toString()方法可以输出以二进制、十进制、十六进制,乃至其他任意有效进制格式表示的字符串值。
var num = 10; num.toString(); //"10" num.toString(2); //"1010" num.toString(8); //"12" num.toString(10); //"10" num.toString(16); //"a"
注意:默认的(没有参数的)输出值与十进制的输出值相同。
转型函数String()
在不知道要转换的值是不是null或undefined的情况下,可以使用转型函数String(),这个函数可以将任何类型的值转换为字符串。
String()函数遵循下列转换规则:
1、如果值有toString()方法,则调用该方法(没有参数)并返回相应的结果;
2、如果值是null, 则返回 “null” ;
3、如果值是undefined, 则返回 “undefined” 。