<script>
var x=5; var y=6; var z=x+y;
document.write(x + "<br>");
document.write(y + "<br>");
document.write(z + "<br>");
</script>
据我所知,需要加号以添加var 5&amp; 6,输出到z 但为什么z有一个加号?
答案 0 :(得分:1)
+
也用于在JavaScript中连接两个字符串,这意味着连接两个字符串。您的上一个陈述是将z
与<br>
的值相连,这会导致11<br>
。然后由document.write
撰写。
但是,+
运算符的运算完全取决于上下文。考虑一下 -
document.write (3 + 5 + " hello");
以上内容将在页面上写下8 hello
字符串。这是由于表达式从左到右计算的原因,因此3 + 5
首先计算为8
,然后将其与字符串连接以生成字符串8 hello
。所以第一个+
运算符就像一个算术运算符,而第二个运算符就像一个连接运算符。但如果你写 -
document.write(3 + " hello");
然后+
运算符将像串联运算符一样在此处运行,并将连接这两个值。
有关更多信息,您可以访问以下页面 -
答案 1 :(得分:0)
这是因为你正在与STRING
答案 2 :(得分:0)
+
将根据操作数的类型进行连接。
1 + 2 = 3
1 + 2 + ' bread' = '3 bread'
1 + ' bread' = '1 bread'
答案 3 :(得分:0)
在Javascript中,+
用于添加数字,数字和字符串,字符串和数字,字符串和字符串。为字符串创建另一个运算符是没有意义的,所以他们“重载”+运算符来处理字符串。
此外,+
运算符可以作为数字转换器。
例如:
var x = +"123";
这里,x将是一个数字,而不是一个字符串,因为+正在进行转换。
typeof x; // "number"
使用它,你必须记住,如果第一个操作数是一个字符串,结果将被计算为一个字符串。
var x = "5" + 67; // x = "567" not 72!