1、什么情况下回发生其他类型的值转换为字符串类型:
(1)、基于alert / confirm / prompt / document.write 等方法输出内容的时候,
会把输出的值转换为字符串;
(2)、基于 “+” 进行字符串拼接的时候;
(3)、把引用类型值转换为数字的时候,首先会转换为字符串,然后再转换为数字;
(4)、给对象设置属性名,如果不是字符串,首先转换为字符串,然后再当做属性存
储到对象中(对象的属性名只能是数字或者字符串);
(5)手动调用 toString() / toFixed() / join / String() 等方法的时候,也是
为了转换为字符串;
2、转换规律:
// 发生转换时默认调用的方法:toString();
// 规律:除了对象,都是我们理解的那样;
1.toString(); // Uncaught SyntaxError: Invalid or unexpected token
(1).toString(); // '1'
NaN.toString(); // 'NaN'
[].toString(); // ''
[12].toString(); // '12'
......
{}.toString() // '[object, object]'
{name:'xxx'} // '[object, object]'
// 对象转换成字符串 只能是 [object, object]
网友评论