Zum Inhalt

Inhaltsverzeichnis • Teil 5 - JavaScript • Ablauf • Schleifen
⇦ Bedingungen / DOM ⇨
23.07.2014 19:55:29

Schleifen

Schleifen führen Anweisungen mehrfach hintereinander aus, bis eine bestimmte Bedingung erfüllt ist.

Zählschleife

Bei Zählschleifen ist die Bedingung ein Zähler oder eine Elementanzahl.

Über Zählervariable

Die For-Schleife erwartet als Parameter einen Anfangsausdruck (Deklaration und Initialisierung der Zählervariable: var i=0), danach eine Bedingung (Test der Zählervariable: i<10) und zuletzt eine Veränderung (verändern der Zählervariable: i++). Im Gegensatz zu Funktionsparametern werden diese mit Semikolon getrennt.

Der Anfangsausdruck wird vor Schleifenbeginn ausgeführt. Dann werden die Anweisungen im Block ausgeführt. Die Bedingung wird nach jeden Schleifendurchlauf geprüft und die Veränderung zuletzt durchgeführt.

Anmerkung: Für Zählervariablen nimmt man gerne die Variablennamen „i“, „j“, „n“ und „m“.

for (Anfangsausdruck; Bedingung; Veränderung) {
  Anweisungen;
}

Beispiel:

Editor - index.html
<script type="text/javascript">
var Schleife = "Durchlauf:";
for (var i=0; i<10; i++) {
  Schleife = Schleife + " " + i;
}
alert(Schleife);
</script>

Beispielskript ausführen

Über Elementanzahl

Die For-Schleife über eine Elementanzahl braucht keine Bedingung und Veränderung. Die Zählervariable durchläuft automatisch die Anzahl der Elemente des Objekts, das nach dem Schlüsselwort in angegeben ist.

Beachten sie, dass die Zählervariable numerische Werte enthält. Wollen sie beispielsweise die Elemente eines Arrays durchlaufen, greifen sie auf dessen Elemente mit [Zählervariable] zu.

for (var Element in Array/Objekt) {
  Anweisungen;
}

Beispiel:

Editor - index.html
<script type="text/javascript">
var Tiere = new Array ('Hund','Katze','Maus');
var Schleife = "Tiere:";
for (var t in Tiere) {
  Schleife = Schleife + " " + Tiere[t];
}
alert(Schleife);
</script>

Beispielskript ausführen

Bedingte Schleifen

Schleifen laufen nicht nur über eine Anzahl, sondern können auch eine allgemeine Bedingung (Ereignis) als Abbruch haben. Dass heißt, es ist vorher noch nicht bekannt, wieviele Durchläufe eine Schleife hat.

Diese Art von Schleifen können anfangs- oder endbedingt sein.

anfangsbedingt

Bei anfangsbedingten Schleifen wird die Schleifenbedingung vor dem ersten Durchlauf der Schleife geprüft. So kann es sein, dass die Schleife auch gar nicht ausgeführt wird. Diese Schleifenart benötigt nur eine Bedingung und einen Anweisungsteil:

while (Wahrheitswert) {
  Anweisungen;
}

Beispiel:

Editor - index.html
<script type="text/javascript">
var Anzahl = 0;
while (confirm("Nochmal? (" + Anzahl + ")")) {
  Anzahl++;
}
</script>

Beispielskript ausführen

endbedingt

Bei endbedingten Schleifen wird die Schleifenbedingung nach dem ersten Durchlauf der Schleife geprüft. So wird die Schleife immer mindens einmal ausgeführt. Diese Schleifenart benötigt nur eine Bedingung und einen Anweisungsteil:

do {
  Anweisungen;
} while (Wahrheitswert);

Beispiel:

Editor - index.html
<script type="text/javascript">
var Anzahl = 0;
do {
  Anzahl++;
} while (confirm("Nochmal? (" + Anzahl + ")"))
</script>

Beispielskript ausführen

Kontrollfluss von Schleifen

Um noch flexibler innerhalb von Schleifen auf Bedingungen eingehen zu können, können sie mit break und continue den Schleifenablauf noch besser kontrollieren.

break
Direkter Abbruch der Schleife an dieser Stelle
(Damit ist eine mittenbedingte Schleife möglich!)
continue
Direktes Fortsetzen des Ablaufs am Schleifenanfang

Beispiel:

Editor - index.html
<script type="text/javascript">
var Anzahl = 0;
do {
  if (!confirm("Nochmal? (" + Anzahl + ")")) break;
  continue;
  Anzahl++;
} while (true)
</script>

Beispielskript ausführen

Zusammenfassung

⇦ Bedingungen / DOM ⇨
Nach oben