先来看一个小例子:
<html>
<body>
<script type="text/javascript">
for(j=0;j<2;j++) {
for(i=0;i<=10;i++){
if(i==3){
break;
}
document.write("这个数字是"+j+" "+ i)
document.write("<br/>")
}
}
</script>
</body>
</html>
运行结果:
这个数字是0 0 这个数字是0 1 这个数字是0 2 这个数字是1 0 这个数字是1 1 这个数字是1 2
上面例子说明,break语句退出的是最内层的循环。如果我想跳出整个循环该怎么办呢?答案是:break 标签
实例一:
<html>
<body>
<script type="text/javascript">
Tag_1:
for(j=0;j<2;j++) {
for(i=0;i<=10;i++){
if(i==3){
break Tag_1;
}
document.write("这个数字是"+j+" "+ i);
document.write("<br/>");
}
}
document.write("End");
</script>
</body>
</html>
运行结果:
这个数字是0 0 这个数字是0 1 这个数字是0 2 End
实例二:来自《JavaScript权威指南》
<script type="text/javascript">
outerloop://命名外圈语句
for(i=0; i<10; i++)
{
innerloop://命名内圈语句
for(j=0; j<10; j++)
{
// 跳出内圈循环
if(j>3){break;}
// 跳出内圈循环
if(i==2){break innerloop;}
// 跳出外圈循环
if(i==4){break outerloop;}
document.write("i = "+i+" , j = "+j+"<br />");
}
}
document.write("final"+" i = "+i+" , j = "+j);
</script>
运行结果:
i = 0 , j = 0 i = 0 , j = 1 i = 0 , j = 2 i = 0 , j = 3 i = 1 , j = 0 i = 1 , j = 1 i = 1 , j = 2 i = 1 , j = 3 i = 3 , j = 0 i = 3 , j = 1 i = 3 , j = 2 i = 3 , j = 3 final i = 4 , j = 0