问答详情
源自:4-8 退出循环break

为什么这里的break换成continue 就会进入死循环呢?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>break</title>
<script type="text/JavaScript">
var mynum =new Array(70,80,66,90,50,100,89);//定义数组mynum并赋值
var i=0;
while(i<mynum.length)
{
  if(mynum[i]<60)
   {
    document.write("成绩"+mynum[i]+"不及格,不用循环了"+"<br>");
    if(mynum[i]=50){
        break;
    }
   }
  document.write("成绩:"+mynum[i]+"及格,继续循环"+"<br>");
  i=i+1;
 
}
</script>
</head>
<body>
</body>
</html>

continue不是跳出当前循环,执行后面的循环么?


提问者:慕少8507465 2016-04-24 19:53

个回答

  • 孤独的_根号彡
    2016-04-24 20:31:48

    continue的意思是,跳过当前的任务然后重新开始新一轮的循环,每次执行到  if(mynum[i]=50)这一句的时候,因为改为了continue,导致后面的i=i+1一直未能执行,循环一直保持符合循环条件i<mynum.length,所以就成了死循环

  • _Xthanus_
    2016-04-24 20:16:50

    continue的话没有执行到下面的i=i+1,i值不变,循环继续,死循环。