字符串的转换
数字 布尔值等其他数据类型都可以转换成字符串;一般来说,脚本引擎将根据上下文自动完成这样的转换。例如,当把数字或布尔形变量传给希望接收的字符串变量的函数时,就会先隐式将该数值转换成字符串,再进行处理;
var num = 35.00
alert(num)
如果在赋值语句中要对两个变量执行加法操作,其中一个事字符串变量,而另一个是数字变量,那么数字会自动转换成字符串,再进行连接;
var str1 = '4' + 3 + 2 //结果是432
var str2 = 4 + 3 + '2' // 结果是 72
但是,如果使用其他操作符号,那么会将字符串转换成数字(很神奇吧):
var first = '23' - 2 //减法 结果 21
var sec = 12 / '2'. // 除法 结果 6
var three = '3' * 3 // 乘法 结果 9
隐式转换取决于操作符和变量的位置,这说明了松散类型的危险:数值会随着上下文变化。而这取决于引入新类型操作的顺序,以及所引用的操作符。