以下结果是在IE8的测试结果
我只测试了变量相加,还没测试变量和常量
1.当两个变量(已经赋初值 )用“+”连接,如果含有至少一个为字符串 ,无论两个字符串是否定义时有var或者有一个有var,则结果必定为字符串。
2.当两个变量(已经赋初值 )用“+”连接,如果都为数字是结果如下:
<1>demo.html
<script>
var name=123;
var a=1;
name=name+a;
alert(name);
</script>
结果为:124
<2>demo.html
<script>
var name=123;
a=1;
name=name+a;
alert(name);
</script>
结果为:124
<3>demo.html
<script>
name=123;
a=1;
name=name+a;
alert(name);
</script>
结果为:1231
<4>demo.html
<script>
name=123;
var a=1;
name=name+a;
alert(name);
</script>
结果为:1231
结论如下:
当name定义时,有var 结果就是相加
当name定义时,没有var 结果就是字符串连接
刚我有做了 如下测试
<3>demo.html
<script>
b=1;
a=123;
a=a+b;
alert(a);
</script>
结果为:124
不知为何 ?
如有人知道 请指导..