为了账号安全,请及时绑定邮箱和手机立即绑定

while里不可以用continue么?

var mynum =new Array(70,80,66,90,50,100,89);//定义数组mynum并赋值

var j=0;

while(j<mynum.length)

{

  if(mynum[j]<60)

   {

   

    continue;

   }

  document.write("成绩:"+mynum[j]+"及格,继续循环"+"<br>");

  j=j+1;

  

}


老是搞坏浏览器

正在回答

3 回答

var mynum =new Array(70,80,66,90,50,100,89);//定义数组mynum并赋值
var j=0;
while(j<mynum.length)
{
  if(mynum[j]<60) // 这个代码块有问题,当条件为真时,j值没有递增,导致while一直为true,死循环。
  {
      continue;
  }
  document.write("成绩:"+mynum[j]+"及格,继续循环"+"<br>");
  j=j+1;
}

正确写法:

var mynum =new Array(70,80,66,90,50,100,89);//定义数组mynum并赋值
var j=0;
while(j<mynum.length)
{
  j=j+1; 
  if(mynum[j-1]<60)
  {
      continue;
  }
  document.write("成绩:"+mynum[j-1]+"及格,继续循环"+"<br>");
}


0 回复 有任何疑惑可以回复我~
#1

五趾的鱼 提问者

非常感谢!
2017-04-24 回复 有任何疑惑可以回复我~
#2

Leibniz233 回复 五趾的鱼 提问者

卤煮你看懂了吗,能不能解释一下?你原来的代码后面不是有j=j+1吗,为啥不能循环?
2017-06-01 回复 有任何疑惑可以回复我~
#3

慕圣9424722

这个最佳答案有问题吧!
2017-08-10 回复 有任何疑惑可以回复我~
#4

慕姐8259394 回复 慕圣9424722

最佳答案没有问题,当j=4时,进行if(mynum[j]<60)条件里面执行continue,之后直接退出本次循环,是执行不到j=j+1的,所以它一直在j=4这层里面死循环
2017-08-12 回复 有任何疑惑可以回复我~
#5

Molly喜

最佳理解有困难。 建议采用下面这种: 直接在continue前加j=j+1;其它代码与案例一样保持不变。
2017-12-12 回复 有任何疑惑可以回复我~
查看2条回复

break会直接跳出循环     continue只是跳出本次循环

0 回复 有任何疑惑可以回复我~
#1

五趾的鱼 提问者

感谢 感谢
2017-04-24 回复 有任何疑惑可以回复我~

在if里面用continue,会直接跳出循环啊,并不是while里不能用continue,是你使用的时机不对,没必要这么写。

var mynum =new Array(70,80,66,90,50,100,89);//定义数组mynum并赋值

var j=0;

while(j<mynum.length)

{

  if(mynum[j]>=60)

   {

    document.write("成绩:"+mynum[j]+"及格,继续循环"+"<br>");

   }

    else

{

     document.write("成绩:"+mynum[j]+"不及格,继续循环"+"<br>");

}

  

  j=j+1;

  

}


0 回复 有任何疑惑可以回复我~
#1

五趾的鱼 提问者

那应该怎么加进去啊
2017-04-24 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

while里不可以用continue么?

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号