在javascript中,我们可能很少会去用到 Label 语句,但是熟练的应用 Label 语句,尤其是在嵌套循环中熟练应用 break, continue 与 Label 可以精确的返回到你想要的程序的位置。
Label 语句,按书本上说的语法是:
Label: statement
如: begin: for (var i = 0; i < 10 ; i++ ){
alert(i);
}
举一个比较典型的例子,看完后即明白 Label 的应用:(未添加 Label)
var num = 0;
for (var i = 0 ; i < 10 ; i++){
for (var j = 0 ; j < 10 ; j++){
if( i == 5 && j == 5 ){
break;
}
num++;
}
}
alert(num); // 循环在 i 为5,j 为5的时候跳出 j循环,但会继续执行 i 循环,输出 95
对比使用了 Label 之后的程序:(添加 Label 后)
var num = 0;
outPoint:
for (var i = 0 ; i < 10 ; i++){
for (var j = 0 ; j < 10 ; j++){
if( i == 5 && j == 5 ){
break outPoint;
}
num++;
}
}
alert(num); // 循环在 i 为5,j 为5的时候跳出双循环,返回到outPoint层继续执行,输出 55
i j
0 0~9;
1 0~9;
2 0~9;
3 0~9;
4 0~5; break;
5 0~9
6 0~9
7 0~9
8 0~9
9 0~9
9*10+5=95;
5*10+5=55;
break 跳出j 内层循环就不执行num++
本文详细解析了JavaScript中的Label语句及其与break、continue配合使用的技巧,通过具体实例展示了如何利用Label语句来控制复杂的嵌套循环流程。
398

被折叠的 条评论
为什么被折叠?



