VBScript-Schleifen: Do While, Do Until, While, For Each (Beispiel)
⚡ Intelligente Zusammenfassung
VBScript Loops erklärt, wie man Aktionen mithilfe der Konstrukte Do While, Do Until, While Wend, For Next, For Step und For Each wiederholt, und behandelt Syntax, Abbruchbedingungen und Beispiele.

Warum werden Schleifen in VBScript verwendet?
Schleifen dienen dazu, denselben Codeblock wiederholt auszuführen. Es gibt eine Reihe von VBScript-Schleifen.ping Anweisungen. Einige der VBScript-Lookalikes.ping Anweisungen sind Do While, Do Until, For…Next usw. Wie entscheiden Sie also, welche Schleife Sie verwenden?ping Welche Aussage ist für Ihren Bedarf geeignet?
Beim Ausführen von Schleifen ist Ihnen möglicherweise nicht bewusst, wie oft ein Anweisungsblock ausgeführt werden soll. Angenommen, Sie möchten die Summe zweier Zahlen zehnmal berechnen. In diesem Fall wissen Sie bereits, dass Sie einen Codeblock zehnmal wiederholen möchten. Nehmen wir an, Sie möchten die Summe zweier Zahlen so lange berechnen, bis eine bestimmte Variable den Wert „wahr“ annimmt. Hier wissen Sie nicht, wie oft die Schleife ausgeführt werden soll. Je nachdem, ob Sie die Anzahl der Ausführungen kennen oder nicht, können Sie verschiedene Schleifentypen verwenden.ping Aussagen.
Für…Nächste Toiletteping Anweisungssätze werden verwendet, wenn Sie einen Codeblock eine endliche Anzahl von Malen wiederholen möchten, d. h. wenn Sie wissen, wie oft Sie den Codeblock wiederholen möchten.
Do While und Do Until looping Anweisungen werden verwendet, wenn Sie einen Codeblock so lange wiederholen möchten, bis eine Bedingung wahr oder falsch wird, also wenn Sie nicht wissen, wie oft der Codeblock ausgeführt werden soll.
Werfen wir einen Blick auf diese Toiletten.ping Aussagen nacheinander.
VBScript Do While-Schleife
Wenn Sie nicht wissen, wie oft Sie einen Codeblock ausführen müssen, verwenden Sie Do While-Schleifen. Sie möchten beispielsweise die Nachricht „Willkommen“ ausgeben, während der Wert der Variablen x kleiner als 5 ist. In diesem Fall wird die Do While-Schleife verwendet.
<script type="text/vbscript"> Dim x x=1 Do While x<5 document.write("Welcome.") x=x+1 Loop </script>
Wenn Sie versuchen, den Code auszuführen, erhalten Sie die folgende Ausgabe:
Der Block wird viermal ausgeführt (wenn x=1,2,3 und 4) und die Schleife endet, wenn der Wert von x 5 wird. Wenn Sie die Anweisung x=x+1 vergessen, wird Ihre Schleife zu einer Endlosschleife eins. Diese Art von Schleifen wird als bezeichnet EndlosschleifenEndlosschleifen können sogar zum Systemabsturz führen. Verwenden Sie daher beim Einsatz von Do While-Schleifen unbedingt die entsprechenden Schleifen.ping Bei diesen Anweisungen sollten Sie sicherstellen, dass Code vorhanden ist, der die Ausgabe ermöglicht.ping Die Bedingung ist zu einem bestimmten Zeitpunkt wahr.
Wenn Sie der Variablen x zu Beginn den Wert 7 zuweisen, wird der Codeblock kein einziges Mal ausgeführt. Angenommen, Sie möchten den Codeblock unabhängig von der Bedingung mindestens einmal ausführen, dann können Sie die Do While-Schleife verwenden. Ändern Sie den Code wie folgt:
VBScript-Beispiel:
<script type="text/vbscript"> Dim x x=7 Do document.write("Welcome.") x=x+1 Loop While x<5 </script>
Wenn Sie diesen Code ausführen, erhalten Sie nur einmal die Meldung „Willkommen“. Hier wird die Bedingung erst nach einmaliger Ausführung der Schleife überprüft.
VBScript Do Until-Schleife
Die „Do Until“-Schleife wird auch verwendet, wenn Sie nicht wissen, wie oft Sie einen Codeblock ausführen müssen. Der erste Codeblock in der Do Until-Schleife (Do While x<5) entspricht dem unten angegebenen Codeblock.
<script type="text/vbscript"> Dim x x=1 Do Until x=5 document.write("Welcome.") x=x+1 Loop </script>
Dadurch erhalten Sie die gleiche Ausgabe wie der erste Codeblock in der Do While-Schleife. Die Willkommensnachricht wird Ihnen viermal angezeigt. Ähnlich wie bei „Do …..Loop While“ müssen wir auch „Do…Loop Until“ ausführen.
Wenn Sie eine Do While- oder Do Until-Schleife dazwischen verlassen möchten, können Sie die Exit Do-Anweisung verwenden. Angenommen, Sie möchten den Block verlassen, wenn der Wert von x im obigen Programm 3 wird, dann müssen Sie wie folgt programmieren:
<script type="text/vbscript"> Dim x x=1 Do Until x=5 If x=3 Then Exit Do document.write("Welcome.") x=x+1 Loop </script>
Wenn Sie den Code ausführen, sieht Ihre Ausgabe folgendermaßen aus:
Hier wird die Schleife verlassen, wenn der Wert von x 3 wird.
VBScript While-Schleife
While...Wend-Schleife ähnelt der Do While-Schleife, wird jedoch nicht häufig verwendet. Da Do While strukturierter ist als die While…..Wend-Schleife, verwenden Programmierer normalerweise Do While-Anweisungen.
<script type="text/vbscript"> Dim x x = 1 While x < 5 document.write("Welcome.") x=x+1 Wend </script>
Die Ausgabe wird sein
VBScript For-Next-Schleife
Die For-Next-Schleife kann verwendet werden, um einen Codeblock für eine bestimmte Anzahl von Malen auszuführen. Die „VBScript For-Schleife“ gibt die Zählervariable und ihre Start- und Endwerte an. Die Next-Anweisung erhöht die Zählervariable um eins.
For i = 1 To 5 document.write("The number is " & i & " ") Next
Wenn Sie den Code ausführen, erhalten Sie die Ausgabe wie folgt:
VBScript For-Step-Next-Schleife
Standardmäßig wird die Zählervariable um eins erhöht. Wenn Sie die Zählervariable um den von Ihnen angegebenen Wert erhöhen oder verringern möchten, können Sie die For….Step….Next-Schleife verwenden. Angenommen, Sie möchten im obigen Code den Zähler um 2 erhöhen und dann Ihren Code wie folgt ändern:
For i = 1 To 5 Step 2 document.write("The number is " & i & "<br />") Next </script>
Die Ausgabe dieses Codes lautet:
Wenn Sie zwischendurch eine For Next- oder For Step Next-Schleife verlassen möchten, können Sie Exit für die Anweisung verwenden. Angenommen, Sie möchten den Block verlassen, wenn der Wert von i im obigen Programm 3 wird, dann müssen Sie wie folgt codieren:
<script type="text/vbscript"> For i = 1 To 5 Step 2 If i=3 Then Exit For document.write("The number is " & i & "<br />") Next </script>
Der Ausgang wird:
VBScript For-Each-Next-Schleife
Wenn Sie einen Codeblock für jedes Element in einer Sammlung oder für jedes Element eines VBS-Arrays wiederholen möchten, müssen Sie die For…Each…Next-Schleife verwenden.
<script type="text/vbscript"> Dim students(4) students(0)="John" students(1)="Hanah" students(2)="Sarah" students(3)="Kevin" students(4)="Emma" For Each x In students document.write(x & "<br />") Next </script>
Die Ausgabe des oben angegebenen Codes erfolgt
Code Beispiel
<html> <head> <script type="text/vbscript"> Dim name, length name = InputBox("Enter your name") length = Len(name)’Gives length of the input string For i = 1 To length txt = Mid(name,i,1)'Returns a specified number of characters from a string, the first parameter is the string, second parameter is the starting position and third parameter is the number of characters to return If txt="a" or txt="A" or txt="e" or txt="E" or txt="i" or txt="I" or txt="o" or txt="O" or txt="u" or txt="U" Then counter = counter+1 End If Next document.write("Hi " & name & "!!!Your name contains " & counter & " vowels.") </script> </head> <body> </body> </html>
Speichern Sie die Datei als loop.html an Ihrem gewünschten Ort. Öffnen Sie die Datei nun im Internet Explorer. Sie erhalten ein Feld, in dem Sie Ihren Namen eingeben müssen. Geben Sie einen Namen ein, z. B. Aaron, wie folgt:
Klicken Sie auf OK und Ihre Ausgabe sieht folgendermaßen aus:




