attime= time.getHours()+":"+time.getMinutes()+":"+time.getSeconds() ;
获取返回的是整数却和字符相加,为什么这样可以?我只知道字符串可以这样相加.
学到了
我是在博客上找到的,关于JavaScript的强制类型转换:
在JavaScript中,不同类型的值或变量相加, JScript 解释器自动将数据类型之一改变(强制转换)为另一种数据类型,然后执行运算。例如:
数值与字符串相加 将数值强制转换为字符串。
布尔值与字符串相加 将布尔值强制转换为字符串。
数值与布尔值相加 将布尔值强制转换为数值。
字符串拼接;
当"+"号连接的不是number值,用于拼接前后两个对象,并返回string
比如
var a=1; var b=1; c=a+b; console.log(c);//结果是2;类型为number var a="1"; var b=1; c=a+b; console.log(c);//结果是"11";类型为string
":"是字符串,有字符串相加就会组合成字符串
数字和字符串相加默认是字符串