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 }