加法操作符执行时会在后台转换不同的数据类型。
1.如果两个操作符都是数值,则执行常规的加法计算,然后根据规则返回结果。(具体规则见P48)
2.如果有一个操作数是字符串,那么规则如下
- 如果两个操作数都是字符串,则将第二个操作数与第一个操作数拼接起来。
- 如果只有一个操作数是字符串,则将另一个操作数转换为字符串,然后再将两个字符串拼接起来。
忽略加法操作中的数据类型是编程中最常见的一个错误 例如:
var num1 = 5;
var num2 = 10;
var message = "The sum of 5 and 10 is " + num1 + num2;
alert(message); //"The sum of 5 and 10 is 510"
以上代码中,每个加法操作都是独立的,根据规则,会依次将两个变量的number类型转换为字符串类型,然后进行拼接,因此应小心使用。