VBScript-løkker: Gør mens, gør indtil, mens, for hver (eksempel)
⚡ Smart opsummering
VBScript Loops forklarer, hvordan man gentager handlinger ved hjælp af konstruktionerne Do While, Do Until, While Wend, For Next, For Step og For Each, og dækker syntaks, exit-betingelser og eksempler.

Hvorfor bruges loops i VBScript?
Løkker bruges til at udføre den samme kodeblok igen og igen. Der findes en række VBScript-løkkerping sætninger. Nogle af VBScript-loo'erneping Udsagnene er Gør mens, Gør indtil, For…..Næste og så videre. Så hvordan vil du beslutte, hvilket toiletping erklæring at bruge til dit behov?
Mens du udfører løkkerne, er du måske opmærksom på, hvor mange gange du vil udføre et sæt instruktioner. For eksempel vil du beregne summen af to tal ti gange. I dette tilfælde ved du allerede, at du vil gentage en kodeblok 10 gange. Antag, at du vil beregne summen af to tal, indtil en bestemt variabel bliver sand. Her ved du ikke, hvor mange gange løkken skal udføres. Så baseret på om du kender eller ikke kender antallet af udførelser, kan du bruge forskellige typer løkker.ping udsagn.
Til…Næste toiletping Sætninger bruges, hvis du vil gentage en kodeblok et endeligt antal gange, dvs. hvis du kender antallet af gange, du vil gentage kodeblokken.
Gør mens og gør indtil toilettetping Sætninger bruges, når du vil gentage en kodeblok, indtil en betingelse bliver sand eller falsk, det vil sige, når du ikke er klar over, hvor mange gange du vil udføre kodeblokken.
Lad os tage et kig på disse toiletterping udsagn én efter én.
VBScript Do While Loop
Hvis du ikke ved, hvor mange gange du skal udføre en kodeblok, så vil du bruge Do While-løkker. For eksempel vil du udsende meddelelsen "Velkommen", mens værdien af variablen x er mindre end 5. I sådanne tilfælde vil Do While-løkke blive brugt.
<script type="text/vbscript"> Dim x x=1 Do While x<5 document.write("Welcome.") x=x+1 Loop </script>
Hvis du prøver at udføre koden, får du output som dette:
Blokken udføres fire gange (når x=1,2,3 og 4), og løkken slutter, når værdien af x bliver 5. Hvis du glemmer sætningen x=x+1, vil din løkke blive en uendelig en. Denne slags sløjfer er kendt som uendelige sløjferUendelige loops kan endda få dit system til at gå ned. Så når du bruger Do While looping udsagn, bør du sørge for, at der er kode, der får toilettet til at fungereping betingelsen er sand på et eller andet tidspunkt.
Hvis du tildeler værdien 7 til variablen x i begyndelsen, vil kodeblokken ikke blive udført én gang. Antag, at du vil udføre kodeblokken mindst én gang uanset betingelsen, så kan du bruge Do While-løkken. Skift koden sådan her:
VBScript eksempel:
<script type="text/vbscript"> Dim x x=7 Do document.write("Welcome.") x=x+1 Loop While x<5 </script>
Hvis du udfører denne kode, får du beskeden "Velkommen" kun én gang. Her kontrolleres betingelsen først efter at have udført løkken én gang.
VBScript Gør indtil Loop
'Do Until'-løkke bruges også, når du ikke ved, hvor mange gange du skal bruge til at udføre en kodeblok. Den første kodeblok i Do Until-løkken (Do While x<5) svarer til den nedenstående kodeblok.
<script type="text/vbscript"> Dim x x=1 Do Until x=5 document.write("Welcome.") x=x+1 Loop </script>
Dette vil give dig det samme output som den første kodeblok i Do While-løkken. Du vil se velkomstbeskeden fire gange. Svarende til Do …..Loop While, vi skal også Do…Loop Until.
Hvis du vil afslutte en Do While- eller Do Until-løkke derimellem, så kan du bruge Exit Do-sætning. Antag, at du vil forlade blokken, når værdien af x bliver 3 i ovenstående program, så skal du kode sådan:
<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>
Hvis du udfører koden, vil dit output se sådan ud:
Her forlades løkken, når værdien af x bliver 3.
VBScript Mens Loop
While...Wend-løkke ligner Do While-løkke, selvom det ikke bruges almindeligt. As Do While er mere struktureret end While…..Wend loop, programmører bruger normalt Do While-sætninger.
<script type="text/vbscript"> Dim x x = 1 While x < 5 document.write("Welcome.") x=x+1 Wend </script>
Udgangen bliver
VBScript For-Next Loop
For-Next-løkken kan bruges til at udføre en kodeblok et bestemt antal gange. "VBScript For loop" specificerer tællervariablen og dens start- og slutværdier. Næste sætning øger tællervariablen med én.
For i = 1 To 5 document.write("The number is " & i & " ") Next
Hvis du udfører koden, får du output som dette:
VBScript For-Step-Next Loop
Som standard øges tællervariablen med én. Hvis du vil øge eller mindske tællervariablen med den værdi, du angiver, kan du bruge For….Step….Next loop. Antag, at du i ovenstående kode vil øge tælleren med 2, og derefter ændre din kode på denne måde:
For i = 1 To 5 Step 2 document.write("The number is " & i & "<br />") Next </script>
Outputtet af denne kode vil være:
Hvis du vil afslutte en For Next eller For Step Next loop imellem, så kan du bruge Exit til sætningen. Antag, at du vil forlade blokken, når værdien af i bliver 3 i ovenstående program, så skal du kode sådan:
<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>
Outputtet vil være:
VBScript For-Each-Next Loop
Hvis du vil gentage en kodeblok for hvert element i en samling eller for hvert element i et VBS-array, skal du bruge For...Each...Next loop.
<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>
Outputtet af den ovenfor angivne kode vil være
Code Eksempel
<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>
Gem filen som loop.html på din foretrukne placering. Åbn nu filen i Internet Explorer, og du vil få en boks, der beder dig indtaste dit navn. Indtast et navn, sig Aaron, sådan her:
Klik på OK, og dit output vil se sådan ud:




