Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

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

SyntaxError.

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.

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
}

Siehe auch