continue在for和while的不同用法与解释,求大神指教?
for(part1;part2;part3) 在for循环中,使用 continue 是跳到part3部分。
(如果,你在part3的地方做了循环变量的修改,那么,循环变量的值会改变、)
而while(exp); 中没有part3这一部分,直接跳过后面语句,重新执行循环体头部分,所以,你在使用的时候,需要自己先进行循环变量的修改。
抱歉,第十五行写错了:continue;//跳出if循环
举个例子:
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8"/>
<title>continue</title>
<script type="text/JavaScript">
var mynum =new Array(70,80,66,90,50,100,89);//定义数组mynum并赋值
var i;
for(i=0;i<mynum.length;i++)
{
if(mynum[i]<60)
{
document.write("成绩不及格,不输出!"+"<br>");
continue;//跳出for循环
}
document.write("成绩:"+mynum[i]+"及格,输出!"+"<br>");
}
document.write("********************"+"<br>");
for(i=0;i<mynum.length;i++)
{
while(mynum[i]<60)
{
document.write("成绩不及格,不输出!"+"<br>");
// continue;如果不注释此句,会陷入无限循环,使得浏览器崩溃
i++;//若无此句,无法跳出循环
}
document.write("成绩:"+mynum[i]+"及格,输出!"+"<br>");
}
</script>
</head>
<body>
</body>
</html>
执行结果:
成绩:70及格,输出!
成绩:80及格,输出!
成绩:66及格,输出!
成绩:90及格,输出!
成绩不及格,不输出!
成绩:100及格,输出!
成绩:89及格,输出!
********************
成绩:70及格,输出!
成绩:80及格,输出!
成绩:66及格,输出!
成绩:90及格,输出!
成绩不及格,不输出!
成绩:100及格,输出!
成绩:89及格,输出!