在实际应用中,循环语句并不是必须等到循环条件不满足了才结束循环,很多情况下,我们希望循环进行到一定阶级时,能根据某种情况提前退出循环或者终止某一次循环。要实现此需求,需要使用 break 语句或 continue 语句。
continue 语句用于终止当前循环,并马上进入下一次循环。
continue 语句的基本语法如下:
continue 语句的执行通常需要设定某个条件,当满足该条件时,执行 continue 语句。
【例 1】continue 语句的应用。
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>continue语句的应用</title>
<script>
var sum = 0;
var str = "1~20之间的偶数有:";
//把1~20之间的偶数进行累加
for(var i = 1; i < 20; i++){
//判断i是否为偶数,如果模不等于0,为奇数,结束当前循环,进入下一次循环
if(i % 2 != 0)
continue;
sum += i; //如果执行continue语句,循环体内的该行以及后面的代码都不会被执行
str +=i + " ";
}
str += "\n这些偶数的和为:" + sum;
alert(str);
</script>
</head>
<body>
</body>
</html>
上述代码使用 i%2!=0 作为 continue 语句执行的条件,如果条件表达式的值为真,即 i 为奇数时,执行 continue 语句终止当前循环,此时 continue 语句后续的代码都不会被执行,因而奇数都不会被累加。可见,通过使用 continue 语句就可以保证只累加偶数。
上述代码在 Chrome 浏览器运行后弹出的对话框结果如图 1 所示。
单独使用的 break 语句的作用有两方面:一是在 switch 语句中退出 switch;二是在循环语句中退出整个循环。实际应用中,break 后面还可以跟一个标签,此时 break 语句的作用是跳转到标签所标识的语句块的结束处。当需要从内层循环跳转到某个外层循环的结束时,就需要使用带有标签的 break 语句。
break 语句的基本语法如下:
break 语句和 continue 语句一样,执行也需要设定某个条件,当满足该条件时,执行 break 语句。
【例 2】break 语句的应用。
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>break语句的应用</title>
<script>
var sum = 0;
var str = "1~20之间的被累加的偶数有:";
//把1~20之间的偶数进行累加
for(var i = 2; i < 20;i += 2){
if(sum > 60)
break; //执行break语句后,整个循环立刻停止结束执行
sum += i;
str += i + " ";
}
str += "\n这些偶数的和为:" + sum;
alert(str);
</script>
</head>
<body>
</body>
</html>
上述代码使用 sum>60 作为 break 语句执行的条件,如果条件表达式的值为真,执行 break 语句退出整个循环,此时 break 语句后续的代码以及后面的循环都不会被执行。
上述代码在 Chrome 浏览器运行后弹出的对话框结果如图 2 所示。