SyntaxError: continue must be inside loop
当 continue 语句不在循环语句内部时,会发生 JavaScript 异常 "continue 必须在循环内"。
消息
SyntaxError: Illegal continue statement: no surrounding iteration statement (V8-based) SyntaxError: Illegal continue statement: 'label' does not denote an iteration statement (V8-based) SyntaxError: continue must be inside loop (Firefox) SyntaxError: 'continue' is only valid inside a loop statement. (Safari) SyntaxError: Cannot continue to the label 'label' as it is not targeting a loop. (Safari)
错误类型
哪里出错了?
continue 语句可用于继续循环,在其他地方使用它们是语法错误。或者,你可以为 continue 语句提供 label 以继续带有该 label 的任何循环 — 但是,如果该 label 没有引用包含语句,则会抛出另一个错误 SyntaxError: label not found,如果该 label 引用的语句不是循环,则仍然会抛出语法错误。
示例
在回调中使用 continue
如果你想在 forEach() 循环中进行下一次迭代,请使用 return,或者将其转换为 for...of 循环。
js
array.forEach((value) => {
if (value === 5) {
continue; // SyntaxError: continue must be inside loop
}
// do something with value
});
js
array.forEach((value) => {
if (value === 5) {
return;
}
// do something with value
});
js
for (const value of array) {
if (value === 5) {
continue;
}
// do something with value
}