| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Statements/break | [Back] [Original] |
Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.
Diese Funktion ist gut etabliert und funktioniert auf vielen Gerten und in vielen Browserversionen. Sie ist seit Juli 2015 browserbergreifend verfgbar.
Die break-Anweisung beendet die aktuelle Schleife oder die switch-Anweisung und bertrgt die Programmausfhrung auf die Anweisung, die der beendeten Anweisung folgt. Sie kann auch verwendet werden, um eine markierte Anweisung zu berspringen, wenn sie innerhalb dieser markierten Anweisung verwendet wird.
let i = 0;
while (i < 6) {
if (i === 3) {
break;
}
i += 1;
}
console.log(i);
// Expected output: 3
break;
break label;
label OptionalBezeichner, der mit dem Label der Anweisung verbunden ist, zu der unterbrochen werden soll. Wenn die break-Anweisung nicht innerhalb einer Schleife oder einer switch-Anweisung verschachtelt ist, ist der Label-Bezeichner erforderlich.
Wenn break; auftritt, verlsst das Programm die innerste switch- oder Schleifen- Anweisung und fhrt mit der nchsten Anweisung danach fort.
Wenn break label; auftritt, verlsst das Programm die mit label markierte Anweisung und fhrt mit der nchsten Anweisung danach fort. Die break-Anweisung muss innerhalb des referenzierten Labels verschachtelt sein. Die markierte Anweisung kann jede beliebige Anweisung sein (blicherweise eine block-Anweisung); sie muss keine weitere Schleifenanweisung sein.
Eine break-Anweisung, mit oder ohne folgendem Label, kann nicht auf der obersten Ebene eines Skripts, Moduls, Funktionskrpers oder im statischen Initialisierungsblock verwendet werden, selbst wenn die Funktion oder Klasse weiter innerhalb einer Schleife enthalten ist.
Die folgende Funktion enthlt eine break-Anweisung, die die while-Schleife beendet, wenn i den Wert 3 hat, und dann den Wert 3 * x zurckgibt.
function testBreak(x) {
let i = 0;
while (i < 6) {
if (i === 3) {
break;
}
i += 1;
}
return i * x;
}
Der folgende Code enthlt eine break-Anweisung, die die switch-Anweisung beendet, wenn ein Fall abgeglichen wurde und der entsprechende Code ausgefhrt wurde.
const food = "sushi";
switch (food) {
case "sushi":
console.log("Sushi is originally from Japan.");
break;
case "pizza":
console.log("Pizza is originally from Italy.");
break;
default:
console.log("I have never heard of that dish.");
break;
}
Der folgende Code verwendet break-Anweisungen mit markierten Blcken. Durch die Verwendung von break outerBlock wird die Ausfhrung ans Ende des als outerBlock markierten Blockstatements bertragen.
outerBlock: {
innerBlock: {
console.log("1");
break outerBlock; // breaks out of both innerBlock and outerBlock
console.log(":-("); // skipped
}
console.log("2"); // skipped
}
Eine break-Anweisung muss innerhalb einer markierten Anweisung verschachtelt sein, auf die sie sich bezieht. Der folgende Code verwendet ebenfalls break-Anweisungen mit markierten Blcken, erzeugt jedoch einen Syntaxfehler, da seine break-Anweisung sich auf block2 bezieht, jedoch nicht innerhalb von block2 verschachtelt ist.
block1: {
console.log("1");
break block2; // SyntaxError: label not found
}
block2: {
console.log("2");
}
Syntaxfehler werden auch in den folgenden Codebeispielen erzeugt, die break-Anweisungen innerhalb von Funktionen verwenden, die innerhalb einer Schleife oder eines markierten Blocks verschachtelt sind, aus denen die break-Anweisungen ausbrechen sollen.
function testBreak(x) {
let i = 0;
while (i < 6) {
if (i === 3) {
(() => {
break;
})();
}
i += 1;
}
return i * x;
}
testBreak(1); // SyntaxError: Illegal break statement
block1: {
console.log("1");
(() => {
break block1; // SyntaxError: Undefined label 'block1'
})();
}
| Spezifikation |
|---|
| ECMAScript 2027 LanguageSpecification # sec-break-statement |
Der Bauplan fr ein besseres Internet.
Teile dieses Inhalts sind 19982026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfgbar unter einer Creative-Commons-Lizenz.
| Web Proxy Viewer | New URL | Original Page |