while问题

Archer_1 2013-10-21 03:15:00
这样

function myFunction()
{
var x="",i=0;
while (i<5)
{
x=x + "The number is " + i + "<br>";
i++;
}
document.getElementById("demo").innerHTML=x;
}

和这样
function myFunction()
{
var x="",i=0;
while (i<5)
{
x=x + "The number is " + i + "<br>";
i++;
document.getElementById("demo").innerHTML=x;
}
}
效果都是循环输出,但是别的语言中
document.getElementById("demo").innerHTML=x;
必须要在while括号里面呀?
...全文
100 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
notlikeGaoShou 2013-10-21
  • 打赏
  • 举报
回复
引用 楼主 sdmylm 的回复:
这样

function myFunction()
{
var x="",i=0;
while (i<5)
  {
  x=x + "The number is " + i + "<br>";
  i++;
  }
document.getElementById("demo").innerHTML=x;
}
和这样
function myFunction()
{
var x="",i=0;
while (i<5)
  {
  x=x + "The number is " + i + "<br>";
  i++;
  document.getElementById("demo").innerHTML=x;
  }
}
效果都是循环输出,但是别的语言中
document.getElementById("demo").innerHTML=x;
必须要在while括号里面呀?
效果是一样的但是建议用上面的那种, 你看看运行过程就知道了,第一种的话是每次循环不带innerHTML的修改的,在最后一次修改就可以 第二种是每次都去修改innerHTML,不断用新的去覆盖,但还是一样显示最后的结果 所以代码优化来讲的话使用第一种,还有什么疑问么
ziyu529 2013-10-21
  • 打赏
  • 举报
回复
虽然结果一样,但是第二种方式的时候其实只有最后一次对它赋值生效了,因为i=4的时候x是从0到4拼接好的一个字符串。 所以第二种方式虽然是循环每次都赋值了,但都是无用功,其实只需要复制一次,即在while之外即可。
未知数 2013-10-21
  • 打赏
  • 举报
回复
你这个只是个代码逻辑问题,和语言本身没什么关系 放while里面,就循环时执行 放while后面,循环完后执行 无论那种语言都是这样的吧?
别闹腰不好 2013-10-21
  • 打赏
  • 举报
回复
引用 1 楼 KongHuLu 的回复:
两种方式的区别在于document.getElementById("demo").innerHTML=x;在上面执行了一次,在下面执行了5次。 当方法执行完毕以后,得到的结果是一样的
正确 结贴啊 给分啊
潮起潮落 2013-10-21
  • 打赏
  • 举报
回复
两种方式的区别在于document.getElementById("demo").innerHTML=x;在上面执行了一次,在下面执行了5次。 当方法执行完毕以后,得到的结果是一样的

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧