【发布时间】:2017-08-18 15:27:34
【问题描述】:
我试图理解为什么等于 10 的变量 txt 在返回时不会应用于语句?如果我将变量设置为 10,它不应该在循环返回时应用于输出吗?
这是我的代码:
function myFunction() {
var myNumber = 2;
var txt = 10;
while (myNumber != Infinity) {
myNumber = myNumber * myNumber;
txt = txt + myNumber + "<br>";
}
document.getElementById("demo").innerHTML = txt;
}
<button onclick="myFunction()">Try it</button>
<p id="demo"></p>
【问题讨论】:
-
我不清楚问题是什么。 apply 是什么意思?你期望的输出是什么?
-
所以基本上我试图理解为什么第一个输出等于 14,但是当函数循环返回时,txt=10 不会应用于其余的输出。 @trincot
-
在第一次迭代之前,它是数字
10。在那次迭代之后,它是10 + 4的总和,然后在最后转换为字符串<br>,所以"14<br>"。所以我不知道你想要什么输出,但如果你希望每个数字都被10抵消,那不是因为10不再存在。 -
如果您希望 10 保持不变,请执行
txt = 10 + myNumber + "<br>"; -
是的,现在我完全明白了!!!你们太棒了!!!!非常感谢....我在这里汗流浃背! @squint
标签: javascript html function while-loop conditional