[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Statements/continue [Back]  [Original]

continue - JavaScript | MDN

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

View in English Always switch to English

continue

Baseline
Weitgehend verfgbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Gerten und in vielen Browserversionen. Sie ist seit Juli 2015 browserbergreifend verfgbar.

Die continue-Anweisung beendet die Ausfhrung der Anweisungen in der aktuellen Iteration der aktuellen oder benannten Schleife und setzt die Ausfhrung der Schleife mit der nchsten Iteration fort.

In diesem Artikel

Probieren Sie es aus

let text = "";

for (let i = 0; i < 10; i++) {
  if (i === 3) {
    continue;
  }
  text += i;
}

console.log(text);
// Expected output: "012456789"

Syntax

js
continue;
continue label;
label Optional

Kennung, die mit dem Label der Anweisung verknpft ist.

Beschreibung

Im Gegensatz zur break-Anweisung beendet continue nicht die Ausfhrung der Schleife insgesamt, sondern:

Die continue-Anweisung kann ein optionales Label enthalten, das es dem Programm ermglicht, zur nchsten Iteration einer benannten Schleifenanweisung zu springen, anstatt zur innersten Schleife. In diesem Fall muss die continue-Anweisung innerhalb dieser benannten Anweisung verschachtelt sein.

Eine continue-Anweisung, mit oder ohne folgendes Label, kann nicht auf der obersten Ebene eines Skripts, Moduls, Funktionskrpers oder statischen Initialisierungsblocks verwendet werden, selbst wenn die Funktion oder Klasse weiter in einer Schleife verschachtelt ist.

Beispiele

Verwendung von continue mit while

Das folgende Beispiel zeigt eine while-Schleife, die eine continue-Anweisung enthlt, die ausgefhrt wird, wenn der Wert von i 3 ist. Somit nimmt n die Werte 1, 3, 7 und 12 an.

js
let i = 0;
let n = 0;

while (i < 5) {
  i++;

  if (i === 3) {
    continue;
  }

  n += i;
}

Verwendung von continue mit einem Label

Im folgenden Beispiel enthlt eine mit checkIAndJ benannte Anweisung eine ebenfalls mit checkJ benannte Anweisung. Wenn continue auftritt, setzt das Programm an der Spitze der checkJ-Anweisung fort. Jedes Mal, wenn continue auftritt, wird checkJ so lange wiederholt, bis seine Bedingung false zurckgibt. Wenn false zurckgegeben wird, wird der Rest der checkIAndJ-Anweisung abgeschlossen.

Wenn continue ein Label checkIAndJ htte, wrde das Programm an der Spitze der checkIAndJ-Anweisung fortfahren.

js
let i = 0;
let j = 8;

checkIAndJ: while (i < 4) {
  console.log(`i: ${i}`);
  i += 1;

  checkJ: while (j > 4) {
    console.log(`j: ${j}`);
    j -= 1;

    if (j % 2 === 0) continue;
    console.log(`${j} is odd.`);
  }
  console.log(`i = ${i}`);
  console.log(`j = ${j}`);
}

Ausgabe:

i: 0

// start checkJ
j: 8
7 is odd.
j: 7
j: 6
5 is odd.
j: 5
// end checkJ

i = 1
j = 4

i: 1
i = 2
j = 4

i: 2
i = 3
j = 4

i: 3
i = 4
j = 4

Unsyntaktische continue-Anweisungen

continue kann nicht innerhalb von Schleifen verwendet werden, die Funktionsgrenzen berschreiten.

js
for (let i = 0; i < 10; i++) {
  (() => {
    continue; // SyntaxError: Illegal continue statement: no surrounding iteration statement
  })();
}

Beim Verweisen auf ein Label muss die benannte Anweisung die continue-Anweisung enthalten.

js
label: for (let i = 0; i < 10; i++) {
  console.log(i);
}

for (let i = 0; i < 10; i++) {
  continue label; // SyntaxError: Undefined label 'label'
}

Die benannte Anweisung muss eine Schleife sein.

js
label: {
  for (let i = 0; i < 10; i++) {
    continue label; // SyntaxError: Illegal continue statement: 'label' does not denote an iteration statement
  }
}

Spezifikationen

Spezifikation
ECMAScript 2027 LanguageSpecification
# sec-continue-statement

Browser-Kompatibilitt

Siehe auch


Web Proxy Viewer  |  New URL  |  Original Page