标签(label),相当于定位符,用于跳转到程序的任意位置。
配合break
1
2
3
4
5
6
7
8
9
10
11top: // Label
for (var i = 0; i < 3; i++){
for (var j = 0; j < 3; j++){
if (i === 1 && j === 1) break top; // 注意,不加引号
console.log('i=' + i + ', j=' + j);
}
}
// i=0, j=0
// i=0, j=1
// i=0, j=2
// i=1, j=0如果满足if,直接跳出双重循环。 配合continue
1
2
3
4
5
6
7
8
9
10
11
12
13
14top:
for (var i = 0; i < 3; i++){
for (var j = 0; j < 3; j++){
if (i === 1 && j === 1) continue top;
console.log('i=' + i + ', j=' + j);
}
}
// i=0, j=0
// i=0, j=1
// i=0, j=2
// i=1, j=0
// i=2, j=0
// i=2, j=1
// i=2, j=2当i=1,j=1时,跳过打印(当前内层循环)直接进行下一个外层循环(不会跳出top)
label用于跳出代码块
1
2
3
4
5
6
7
8foo: {
console.log(1);
break foo;
console.log('本行不会输出');
}
console.log(2);
// 1
// 2ref: 阮一峰