我知道这个问题已被多次询问过。但我没有完成它。有人可以帮助退出内循环。打破labelname不适合我。
loop1:
for (var i = 0; i < timeHolder.length; i++) {
loop2:
for (var key2 in self.TimeHolder[0]) {
if (self.TimeHolder[0].hasOwnProperty(key2)) {
if (self.TimeHolder[0][key2] == timeHolder[i]) {
var pattern = _.pick(row, key2)[key2];
var status = pattern.split('-');
$('#tblMatrix tr:last').append(self.createCompanyStatusRowsByRow(status));
break loop2;
}
}
}
}
然而,break loop2也从外环退出。
答案 0 :(得分:4)
看看这个问题:Best way to break from nested loops in Javascript? 最佳答案(我认为)是:
loop1:
for (var i in set1) {
loop2:
for (var j in set2) {
loop3:
for (var k in set3) {
break loop2; // breaks out of loop3 and loop2
}
}
}
答案 1 :(得分:0)
只需使用break
代替break loop2
。
break
关键字将使您脱离当前的执行循环。
答案 2 :(得分:0)
简单的休息对我来说非常适合。
var elems = [ "a","b","c","d","e" ];
for( var i = 0; i < 5; i++ ) {
console.log( i );
for( var j in els ) {
if( elems[j] == "c" ) {
break;
}
console.log( " " + elems[j] );
}
}
预期输出
0
a
b
1
a
b
2
a
b
3
a
b
4
a
b