- //toString的对象
- var obj2 = {
- toString:function(){
- return 'a'
- }
- }
- console.log('2'+obj2)
- //输出结果2a
-
- //常规对象
- var obj1 = {
- a:1,
- b:2
- }
- console.log('2'+obj1);
- //输出结果 2[object Object]
-
- //几种特殊对象
- '2' + {} // "2[object Object]"
- '2' + [] // "2"
- '2' + function (){} // "2function (){}"
- '2' + ['koala',1] // 2koala,1
调用toString()方法时,会自动调用valueOf()方法,所以这里也可以直接写成object.toString()
字符转换记特殊:
String({}) // '[object Object]'
String([1,[2,3]]) // '1,2,3'
数字转换记特殊:
null =>0, undefined =>NaN, true => 1, false => 0
字符串都是数字时才能转换为数字,不然转换失败,返回NaN
转换为数值(记特殊:Null=>0,undefined=>NaN)
布尔值为false的:undefined, null, -0, 0, +0, NaN, ''(空字符串)