Schleifenstrukturen


Sie sind wichtiger Bestandteil aller Programmiersprachen, auch der objektorientierten, obwohl sie eines der wichtigsten Elemente der "Ablaufprogrammierung" darstellen. Schleifen sind wichtiges Rationalisierungsmittel, denn sie sparen Programmieraufwand, Speicherplatz und Laufzeit. Sie sind das "Fließband" der EDV.
Der Einsatz von Schleifen setzt gewisse Bemühungen des Programmierers schon in der Planungsphase seines Projektes voraus. Nein, keine Ablaufpläne und andere furchtbare Dinge aber ..  Variable, die sich prinzipiell seriell bearbeiten lassen, sollten immer als Array angelegt werden, denn das ist Voraussetzung für die Verarbeitung in Schleifen.


while...

Die Schleifenstruktur endet abhängig von einer Bedingung. Der grundlegende Aufbau der Schleife ist: while (bedingung) befehl; Oder mehr textlich: Solange die Bedingung erfüllt ist, führe den Befehl aus.

while (Bedingung1)
{
    [Anweisungen1;]
    [if (Bedingung2)[{Anweisungen2;] break;[}]]
    [Anweisungen3;]
    [if (Bedingung3) continue;]
    [Anweisungen4;]
}

do ... while

Genauso wie die while-Schleife nur anders: Die Bedingung wird erst am Ende geprüft. Eine wichtige Folge ist, diese  Schleife wird in jedem Falle mindestens einmal durchlaufen.

do
{
    [Anweisungen1;]
    [if (Bedingung1)[{Anweisungen2;] break;[}]]
    [Anweisungen3;]
    [if (Bedingung2) continue;]
    [Anweisungen4;]
}
while (Bedingung3);

for

Wenn die Anzahl erforderlicher Umläufe vorher bekannt ist, hat die For.. -Schleife Vorteile, weil sie schnell und platzsparend abgearbeitet wird. Ihre Syntax stammt aus C und ist für den Basic- oder Pascal-Programmierer (ja, es gibt sogar noch Delphi!) sehr gewöhnungsbedürftig.

for ([var] i = von; i <= bis; i++)
{
   [Anweisungen1;]
   [if (Bedingung1){[Anweisungen2;] break;}]
   [Anweisungen3;]
   [if (Bedingung3) continue;]
   [Anweisungen4;]
}

for .. in

Diese Schleife listet alle Eigenschaften eines Objektes auf. Eines der wichtigsten Objekte ist ja window, es hat ca. 30 Eigenschaften, deren Namen und Werte auf diese Weise erfragbar sind. Der Test-Aufruf erfolgt in der Form:

for(i in window){alert("Eigenschaft "+i+" = "+window[i]);}

with ...

So was ähnliches wie eine Schleife, die aber prinzipiell nur einmal durchlaufen wird

with Objekt
{
   [Anweisungen;]    zum Beispiel: with Math {a = sqrt(7);...} statt {a = Math.sqrt(7);...}
}

Die with-Konstruktion erleichtert lediglich die Schreibung und erhöht die Ausführungsgeschwindigkeit (sagt man). Der Aufruf von Objekteigenschaften oder-Methoden kann innerhalb der Schleife ohne Nennung des Objektes erfolgen.