VBScript-silmukat: Do While, Do Until, While, For Every (esimerkki)

โšก ร„lykรคs yhteenveto

VBScript-silmukat selittรคvรคt, miten toimintoja toistetaan Do While-, Do Until-, While Wend-, For Next-, For Step- ja For Each-rakenteiden avulla. Silmukat kattavat syntaksin, lopetusehdot ja esimerkit.

  • ๐Ÿ” Tee samalla: Toistuu, kun ehto on tosi.
  • โ›” Tee kunnes: Toistuu, kunnes ehto muuttuu Trueksi.
  • ๐ŸชŸ Wendin aikana: Perinteinen silmukka ilman poistumisvaihtoehtoa.
  • ๐Ÿ”ข Seuraavaksi: Laskuripohjainen silmukka, jossa on valinnainen askel.
  • ๐Ÿ“ฆ Jokaiselle seuraavalle: Iteroi taulukoita, sanakirjoja tai kokoelmia.
  • ๐Ÿค– Tekoรคlyn auttajat: Tekoรคly luo VBScript-silmukoita ja selittรครค niiden poistumisvaihtoehdot.

VBScript-silmukat

Miksi VBScriptissรค kรคytetรครคn silmukoita?

Silmukoita kรคytetรครคn saman koodilohkon suorittamiseen yhรค uudelleen ja uudelleen. VBScript-kielellรค on useita silmukoita.ping lausekkeet. Jotkin VBScript-sivutping lausekkeet ovat Tee samalla kun (Do While), Tee kunnes (Do Until), Seuraavaksi (Forโ€ฆ..Next) ja niin edelleen. Joten miten pรครคtรคt, minkรค vessanping lauseke, jota haluat kรคyttรครค tarpeisiisi?

Suorittaessasi silmukoita saatat olla tietoinen siitรค, kuinka monta kertaa haluat suorittaa joukon kรคskyjรค. Esimerkiksi haluat laskea kahden luvun summan kymmenen kertaa. Tรคssรค tapauksessa tiedรคt jo, ettรค haluat toistaa koodilohkon 10 kertaa. Oletetaan, ettรค haluat laskea kahden luvun summan, kunnes tietty muuttuja tulee tosiksi. Tรคssรค tapauksessa et tiedรค, kuinka monta kertaa silmukka suoritetaan. Joten sen perusteella, tiedรคtkรถ suoritusten mรครคrรคn vai et, voit kรคyttรครค erityyppisiรค silmukoita.ping lausuntoja.

Seuraavaksiโ€ฆvessassaping lauseita kรคytetรครคn, jos haluat toistaa koodilohkon รครคrellisen mรครคrรคn kertoja, eli jos tiedรคt kuinka monta kertaa haluat toistaa koodilohkon.

Tee samalla ja tee vessan รครคreen astiping lauseita kรคytetรครคn, kun haluat toistaa koodilohkoa, kunnes ehto muuttuu tosiksi tai epรคtosiksi, eli kun et ole tietoinen siitรค, kuinka monta kertaa haluat suorittaa koodilohkon.

Katsotaanpa nรคitรค vessanpรถnttรถjรคping lausunnot yksi kerrallaan.

VBScript Do While Loop

Jos et tiedรค, kuinka monta kertaa sinun on suoritettava koodilohko, kรคytรคt Do While -silmukoita. Esimerkiksi haluat tulostaa viestin "Tervetuloa", kun muuttujan x arvo on pienempi kuin 5. Tรคllรถin kรคytetรครคn Do While -silmukkaa.

<script type="text/vbscript">
Dim x
x=1
Do While x<5
document.write("Welcome.")
x=x+1
Loop
</script>

Jos yritรคt suorittaa koodin, saat seuraavanlaisen tulosteen:

VBScript Do While Loop

Lohko suoritetaan neljรค kertaa (kun x=1,2,3 ja 4) ja silmukka pรครคttyy, kun x:n arvosta tulee 5. Jos unohdat lauseen x=x+1, silmukastasi tulee loputon yksi. Tรคmรคntyyppiset silmukat tunnetaan nimellรค รครคrettรถmรคt silmukatLoputtomat silmukat voivat jopa kaataa jรคrjestelmรคn. Joten Do While -toimintoa kรคytettรคessรค...ping lauseita, sinun tulee varmistaa, ettรค on olemassa koodia, joka tekee vessastaping ehto totta jossain vaiheessa.

Jos annat muuttujalle x arvon 7 alussa, koodilohkoa ei suoriteta edes kerran. Oletetaan, ettรค haluat suorittaa koodilohkon vรคhintรครคn kerran ehdosta riippumatta, niin voit kรคyttรครค Do While -silmukkaa. Vaihda koodi seuraavasti:

VBScript-esimerkki:

<script type="text/vbscript">
Dim x
x=7
Do 
document.write("Welcome.")
x=x+1
Loop While x<5
</script>

Jos suoritat tรคmรคn koodin, saat viestin "Tervetuloa" vain kerran. Tรคssรค ehto tarkistetaan vasta silmukan kerran suorittamisen jรคlkeen.

VBScript Tee silmukkaan asti

'Do Until' -silmukkaa kรคytetรครคn myรถs silloin, kun et tiedรค, kuinka monta kertaa sinun on suoritettava koodilohko. Ensimmรคinen koodilohko Do Until -silmukassa (Do While x<5) vastaa alla annettua koodilohkoa.

<script type="text/vbscript">
Dim x
x=1
Do Until x=5
document.write("Welcome.")
x=x+1
Loop
</script>

Tรคmรค antaa sinulle saman tulosteen kuin Do While -silmukan ensimmรคinen koodilohko. Nรคet tervetuloviestin neljรค kertaa. Samanlainen kuin Do โ€ฆ..Loop While, meidรคn on myรถs tehtรคvรคโ€ฆ Loop Until.

Jos haluat lopettaa Do While- tai Do Until -silmukan vรคlissรค, voit kรคyttรครค Exit Do -kรคskyรค. Oletetaan, ettรค haluat poistua lohkosta, kun x:n arvo tulee 3:ksi yllรค olevassa ohjelmassa, sinun on koodattava seuraavasti:

<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>

Jos suoritat koodin, tulos nรคyttรครค tรคltรค:

VBScript Tee silmukkaan asti

Tรคssรค silmukasta poistutaan, kun x:n arvosta tulee 3.

VBScript While Loop

Whileโ€ฆWend-silmukka on samanlainen kuin Do While -silmukka, vaikka sitรค ei kรคytetรค yleisesti. As Do While on jรคsennellympi kuin Whileโ€ฆ..Wend-silmukka, ohjelmoijat kรคyttรคvรคt yleensรค Do While -lauseita.

<script type="text/vbscript">
Dim x
x = 1   
While x < 5   
document.write("Welcome.")
x=x+1
Wend  
</script>	

Tulos tulee olemaan

VBScript While Loop

VBScript seuraavalle silmukalle

For-Next-silmukkaa voidaan kรคyttรครค koodilohkon suorittamiseen tietyn mรครคrรคn kertoja. "VBScript For loop" mรครคrittรครค laskurimuuttujan ja sen alku- ja loppuarvot. Next-lause lisรครค laskurin muuttujaa yhdellรค.

For i = 1 To 5
  document.write("The number is " & i & "
")
Next

Jos suoritat koodin, saat seuraavanlaisen tulosteen:

VBScript seuraavalle silmukalle

VBScript For-Step-Next Loop

Oletusarvon mukaan laskurimuuttujaa kasvatetaan yhdellรค. Jos haluat suurentaa tai pienentรครค laskurimuuttujaa mรครคrittรคmรคsi arvon verran, voit kรคyttรครค Forโ€ฆ.Stepโ€ฆ.Seuraava silmukka. Oletetaan, ettรค yllรค olevassa koodissa haluat kasvattaa laskuria kahdella ja muokata sitten koodiasi seuraavasti:

For i = 1 To 5 Step 2
  document.write("The number is " & i & "<br />")
Next
</script>

Tรคmรคn koodin lรคhtรถ on:

VBScript For-Step-Next Loop

Jos haluat poistua For Next- tai For Step Next -silmukasta vรคlissรค, voit kรคyttรครค lauseessa Exit-toimintoa. Oletetaan, ettรค haluat poistua lohkosta, kun i:n arvosta tulee 3 yllรค olevassa ohjelmassa, sinun on koodattava seuraavasti:

<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>

Tuotos on:

VBScript For-Step-Next Loop

VBScript For-Each-Next Loop

Jos haluat toistaa koodilohkon jokaiselle kokoelman alkiolle tai jokaiselle VBS-taulukon elementille, sinun on kรคytettรคvรค Forโ€ฆEachโ€ฆNext-silmukkaa.

<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>

Yllรค mรครคritellyn koodin tulos on

VBScript For-Each-Next Loop

Code esimerkki

<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>

Tallenna tiedosto nimellรค loop.html haluamaasi paikkaan. Avaa nyt tiedosto Internet Explorerissa ja saat ruudun, jossa sinua pyydetรครคn antamaan nimesi. Kirjoita nimi, sano Aaron nรคin:

VBScript For-Each-Next Loop

Napsauta OK ja tuloste nรคyttรครค tรคltรค:

VBScript For-Each-Next Loop

UKK

Do While suoritetaan tilanteessa True. Do Until suoritetaan tilanteessa False.

Kyllรค. Tekoรคly muuntaa VBScriptin PowerShelliksi, Pythontai JavaSkripti.

Tekoรคly merkitsee puuttuvat lisรคykset ja ehdottaa Exit Do -lausekkeita.

Kรคytรค Exit Do- tai Exit For -vaihtoehtoa. Wend-komennolla ei ole Exit-vaihtoehtoa.

Kyllรค, mutta Do While on parempi sen Exit Do -tuen vuoksi.

Jokaiselle dict.Keys-tiedostossa olevalle avaimelle kรคytetรครคn dict.Item(key)-tiedostoa.

Microsoft vanhentunut. Kรคytรค PowerShelliรค tai Python uutta tyรถtรค varten.

Jos i = 1 - 10, vaihe 2. Negatiiviset askeleet kulkevat ylhรครคltรค alas.

Tiivistรค tรคmรค viesti seuraavasti: