天窗的蚂蚁
2016-01-28 15:41
如下代码。先定义了var x="",就是空字符串。那么这个x=x + "The number is " + i + "<br>";该怎么理解?当i=0时,x就应该是”The number is 0“。那么当i=1时,这时的x值已经是"The number is 0"了,在循环一次"x=x + "The number is " + i + "<br>";",x就变成了"The number is 0 The number is 1"了,但是输出结果并不是啊,它只是"The number is 1"。这时为啥呢?我知道自己这个问题有点幼稚,可是就是想不通。
这么长时间了.楼主可能已经想明白了.不过我还是说说吧. 因为楼主是在最后才输出的全部信息.也就是说楼主把输出语句放错地方了. 想要达到楼主想要的那种效果, 要把输出语句放在循环里面. 这样: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> </head> <body> <script> var x = ""; var i = 0; while (i < 5) { x = x + " The number is " + i; document.write(x + "<br />"); i++; } document.write("完毕<br />"); // 最后一次输出 document.write(x); </script> </body> </html>
楼主知道答案了麽,我也奇怪为什么输出问题,第一次循环时,i=0,x=This number is 0 。然后i=1,再进入循环,x=This number is 0 The number is 1。我在第15行后面加了一句document.write(x); ,但是结果不是这样,奇怪了,,,想不通。
代码没错,浏览器的问题
代码没错,浏览器的问题
x=x + "The number is " + i + "<br>";"
你看这里。。x= x 就是这里问题
你如果写成 X = "The XXX"这样就没问题了。
JavaScript进阶篇
468194 学习 · 21891 问题
相似问题