SyntaxError: continue muss innerhalb einer Schleife sein
Der JavaScript-Ausnahmefehler "continue must be inside loop" tritt auf, wenn eine continue
-Anweisung außerhalb einer Schleifenanweisung verwendet wird.
Meldung
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, und ihre Verwendung außerhalb davon führt zu einem Syntaxfehler. Alternativ können Sie ein Label für die continue
-Anweisung angeben, um eine beliebige Schleife mit diesem Label fortzusetzen — jedoch, wenn das Label sich nicht auf eine enthaltende Anweisung bezieht, wird ein anderer Fehler SyntaxError: label not found ausgelöst, und wenn das Label sich auf eine Anweisung bezieht, die keine Schleife ist, wird dennoch ein Syntaxfehler ausgelöst.
Beispiele
>Verwendung von continue in Rückruffunktionen
Wenn Sie in einer forEach()
-Schleife zur nächsten Iteration übergehen möchten, verwenden Sie stattdessen return
oder konvertieren Sie sie in eine 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
}