我正在尝试使用JavaScript / jQuery突破内部的foreach循环。
result.history.forEach(function(item) {
loop2:
item.forEach(function(innerItem) {
console.log(innerItem);
break loop2;
});
});
Run Code Online (Sandbox Code Playgroud)
这导致错误'Unidentified label loop2'。似乎恰好在循环之前,这就是其他问题在说的问题。
我在做什么错,我该如何解决?
编辑:正确,foreach循环无法以这种方式中断,但是常规的for循环可以。这正在工作:
result.history.forEach(function(item) {
loop2:
for (var i = 0; i < item.length; i++) {
var innerItem = item[i];
console.log(innerItem);
break loop2;
}
});
Run Code Online (Sandbox Code Playgroud)
如果您需要中断迭代,请使用.every()代替.forEach():
someArray.every(function(element) {
if (timeToStop(element)) // or whatever
return false;
// do stuff
// ...
return true; // keep iterating
});
Run Code Online (Sandbox Code Playgroud)
您可以翻转true/ false逻辑并.some()改为使用;相同的基本思想。