Sissejuhatus VBScripti silmustesse

Loopimine võimaldab meil korduvalt täita koodiväliseid avaldusi. Silmused kordavad neid avaldusi, kuni teatud tingimus on täidetud. Selle tingimuse tulemuseks võib olla tõene või vale või tulemuseks lause täpne arv kordi käitamine. Mõningaid silmuseid juhitakse, teades eelnevalt, mitu korda iteratsioone tuleb silmus läbi viia, ja mõned mitte. Nendest tingimustest sõltuvalt saame valida silmuse, mida soovime oma programmis kasutada. Sest silmuseid kasutatakse siis, kui me teame, mitu korda tahame oma koodiplokki korrata, ja Do-silmuseid kasutatakse siis, kui me ei tea, mitu korda me korrata tahame, ja meil on konkreetne tingimus, mis osutub kas tõeseks ja valeks, mille põhjal lõpetame oma silmuse. Selles artiklis käsitleme VBScripti erinevat tüüpi silmuseid.

VBScripti silmuste tüübid

Meil on VBScriptis järgmised silmused:

  1. Tee, kui silmus
  2. Tehke kuni silmuseni
  3. Kuigi Wend Loop
  4. Järgmise loopi jaoks
  5. Etapp-järgmine silmus
  6. Iga järgmise jaoks

1. Tee silmust tehes

Kui koodploki kaudu itereerimise arv pole kindel, kasutame funktsiooni Do While Loop. Näiteks kui tahame konsoolile printida "Tere", siis kui muutuja "a" väärtus on alla 6, kasutame silmust Do While.

Kood:


Dim a
a=1
Do While a<6
document.write("Hello!")
a=a+1
Loop

Selle kooditüki täitmisel saame:

Hello!Hello!Hello!Hello!Hello!

Parema mõistmise huvides vaatame koodi toimimist. Silmuse kood täidetakse viis korda, kuna 'a' väärtust suurendatakse iga kord. Juhtimine väljub silmusest, kui väärtus a saab 6 ja tingimus a <6 pole enam täidetud. Kui me ei kirjuta rida a = a + 1, muutub meie silmus lõpmatuks silmuseks, kuna meie silmusel pole väljumistingimusi. Lõpmatud silmused võivad meie süsteeme krahhida. Seega peame tagama, et meie silmukoodis oleks väljumistingimused. Meil on ahela Do While variatsioon, kus silmust teostatakse alati vähemalt üks kord. Oletame, et määrame muutuja 'a' väärtusega 6 alguse ise. Ülaltoodud näite korral ei käivitata silmuskoodi isegi üks kord. Kuid allpool toodud variatsiooni korral täidab silmus alati vähemalt korra.

Kood:


Dim a
a=6
Do
document.write("Hello!")
a=a+1
Loop While a<5

Selle koodi abil saame väljundi kujul "Tere!" trükitud vaid üks kord. Pärast ahela ühekordset käitamist kontrollime Do Do Loop'i seisukorda.

2. Tehke kuni silmuseni

Sarnaselt funktsiooniga Do While Loop käivitatakse ka funktsioon Do Kuni Loop, kui me ei tea silmusel käitatavate iteratsioonide täpset arvu. Erinevus seisneb süntaksis ja seisundis.

Kood:


Dim a
a=1
Do Until a=6
document.write("Hello!")
a=a+1
Loop

See kood annab meile sama tulemuse kui esimene Do-silmuste programm. Tulemus kuvatakse järgmiselt: 'Hello!Hello!Hello!Hello!Hello!'

Samuti on sarnane muudatus silmuse Do Kuni silmuses, nagu meil oli Do Do-silmuse korral, kus silmus vähemalt üks kord käivitub. Lisaks on meil võimalus enne täitmise lõppu meie Do Loopsist väljuda. Silmusest väljumiseks saame kasutada avaldust Exit Do. Näiteks kui tahame väljuda silmusest, kui 'a' muutub 4-ks, siis võime sisestada Exit Do-avalduse järgmiselt:

Kood:


Dim a
a=1
Do Until a=6
If a=4 Then Exit Do
document.write("Hello!")
a=a+1
Loop

Selle koodi väljund on:

Hello!Hello!Hello!

3. Kuigi Wend Loop

Ehkki Wendi silmus on sarnane Do Do-ahelaga, ei kasutata seda siiski nii sageli. Selle põhjuseks on asjaolu, et Kuigi Wendi ahel pole nii korraldatud kui viimane. See on põhjus, miks arendajad eelistavad Do Do Loop-i.

Kood:


Dim a
a = 1
While a < 6
document.write("Hello!")
a=a+1
Wend

Selle koodi täitmisel saame:

Hello!Hello!Hello!Hello!Hello!

4. Järgmise silmuse jaoks

Seda silmust kasutatakse siis, kui me teame, mitu korda me koodiplokki tahame täita. Rakenduses For Loop on meil loendusmuutuja, mis ütleb meile, mitu korda silmus peaks toimuma. Järgmine lause suurendab loendusmuutujat ühe võrra.

Kood:

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

Selle koodi täitmisel saame:

1

2

3

4

5

5. Järgmise ahela jaoks

Selles ahelas tõuseb loendusmuutuja automaatselt üles. Saame täpsustada väärtuse, mille võrra meie loendur peaks tõusma.

Kood:

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

Selle koodi väljund on:

1

3

5

Nagu Do Loop, saame ka For Loopi keskelt väljuda, kasutades avalduse jaoks Exit. Näiteks:

Kood:


For i = 1 To 5 Step 3
If i=4 Then Exit For
document.write(" & i & ")
Next

Selle koodi väljund on:

1

6. Iga järgneva silmuse jaoks

Kui soovime korrata silmuskoodi iga kollektsiooni üksuse või VBS-massiivi korral, kasutame funktsiooni Iga järgmine silmus.

Kood:


Dim employees(3)
employees (0)="A"
employees (1)="B"
employees (2)="C"
employees (3)="D"
For Each i In employees
document.write(i)
Next

Ülaltoodud koodi täitmisel saame:

A

B

C

D

Silmuseid saab kasutada kindla koodiploki ikka ja jälle käitamiseks. Kui nüüd on teada, mitu korda silmus itereerub, kasutame Do Loops ja While Loop. Kasutame For Loops'i, kui teame täpsed ahelate koodi käivitamise ajad.

Soovitatavad artiklid

See on VBScripti lingide juhend. Siin käsitleme sissejuhatust, süntaksit, VBScripti silmuste tüüpe, näidiskoode ja väljundit. Võite vaadata ka meie teisi soovitatud artikleid -

  1. Mis on VBScript?
  2. VBScripti käsud
  3. JavaScript vs VBScript
  4. VBScripti stringifunktsioonid
  5. PowerShelli silmuste tüübid

Kategooria: