【发布时间】:2016-09-15 05:00:32
【问题描述】:
好的,我正在尝试学习 JS,但是像这样的小东西让我很难,让我想说忘了它
例如 w3schools 说 A+=B 就等于说 A = A + B 但是当我更改此代码以不使用 A+=B 操作数并将其编码为 A = A + B 时,它的工作方式不同! 所以这意味着 A+=B 并不意味着与 A = A + B 相同!
这是 w3chools 的示例,我正在学习“while”循环,这是我的问题,这是他们的代码,它每次都应该在新行上写入“数字是 1-19”
<h1>JavaScript while</h1>
<p id="demo"></p>
<script>
var text = "";
var i = 0;
while (i < 10) {
text += "<br>The number is " + i;
i++;
}
document.getElementById("demo").innerHTML = text;
</script>
</body>
</html>
下面是我的代码,我基本上将它从“A+=B 改写为 A = A+B”,它只写“数字是”一次,数字 1-19 在同一行!
<h1>JavaScript while</h1>
<p id="demo"></p>
<script>
var text = "<br>The number is ";
var i = 0;
while (i < 10) {
text = text + i;
i++;
}
document.getElementById("demo").innerHTML = text;
</script>
</body>
</html>
【问题讨论】:
-
你不懂循环。您正在覆盖
text,因此 The number is 按照设计只会出现一次,正如预期的那样。如果您希望它出现多次,则需要在循环中包含该部分。 -
在第一部分中,他们在循环内构建一个字符串并最终显示结果,而在第二部分中,您将总和计算为数字并最后显示一次。基本上
text += "<br>The number is " + i;连接字符串和text = text + i;正在执行additino 操作。 -
a += b肯定是指a = a + b,问题是示例之间存在巨大差异 -
正确的转换应该是==> text = text + "
数字是" + i; -
第一个代码是..... if TEXT="THE NUMBER IS ";我=0;怎么样.... TEXT = TEXT + I 与 TEXT 不同 += "THE NUMBER IS" + I if TEXT="";我=0; ???这让我感到困惑的是 A = A + B 与 A=+B 相同,如果这是真的,代码应该仍然可以工作
标签: javascript operator-keyword addition