SyntaxError: continue muss innerhalb einer Schleife sein
Die JavaScript-Ausnahme "continue muss innerhalb einer Schleife sein" tritt auf, wenn eine continue
-Anweisung nicht innerhalb einer Schleifenanweisung steht.
Nachricht
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)
Fehlertyp
Was ist schiefgelaufen?
continue
-Anweisungen können verwendet werden, um eine Schleife fortzusetzen. Die Verwendung an anderer Stelle führt zu einem Syntaxfehler. Alternativ können Sie einem continue
-Statement ein Label geben, um eine mit diesem Label versehenen Schleife fortzusetzen – allerdings wird, wenn das Label keine enthaltene Anweisung referenziert, ein anderer Fehler SyntaxError: label not found ausgelöst. Wenn das Label eine Anweisung referenziert, die keine Schleife ist, wird weiterhin ein Syntaxfehler geworfen.
Beispiele
Verwendung von continue in Callbacks
Wenn Sie in einer forEach()
-Schleife mit der nächsten Iteration fortfahren möchten, verwenden Sie stattdessen return
oder konvertieren Sie zu einer for...of
-Schleife.
array.forEach((value) => {
if (value === 5) {
continue; // SyntaxError: continue must be inside loop
}
// do something with value
});
array.forEach((value) => {
if (value === 5) {
return;
}
// do something with value
});
for (const value of array) {
if (value === 5) {
continue;
}
// do something with value
}