VBScript: i clcli; For Next, For Each, Do Loop, While
Cicli: For Next, For Each, Do Loop, While
Cicli
Molto spesso, quando scriviamo del codice, vogliamo poter eseguire uno stesso blocco di codice un certo numero di volte. In questi casi si possono utilizzare le istruzioni di loop (ciclo).
In VBScript abbiamo le seguenti quattro istruzioni di ciclo:
For...Next
For Each...Next
Do...Loop
While...Wend
For...Next
Possiamo usare l'istruzione For...Next per eseguire un blocco di codice, quando sappiamo a priori quante volte dovrà essere ripetuto.
For contatore = valore_iniziale To valore_finale
codice
... Next
Parola chiave Step
Usando la parola chiave Step (passo), si può aumentare o diminuire il valore dela variabile contatore della quantità desiderata.
Con valori positivi dello step aumentiamo il valore della variabile contatore, con valori negativi ne decrementiamo il valore.
Se si omette la parola chiave step il contatore verrà incrementato di 1 ad ogni ciclo.
For contatore = valore_iniziale To valore_finale Step incremento
codice
... Next
Exit For
Si può uscire da un ciclo For...Next utilizzando la parola chiave Exit For, in questo caso viene interrotto il ciclo e l'esecuzione riprende a partire dal comando dopo l'istruzione Next.
For contatore = valore_iniziale To valore_finale Step incremento
codice
... if (condizione) Then Exit For
... Next
For Each...Next
I cicli For Each...Next ripetono un blocco di codice per ogni voce di una collection o per ogni elemento di un'array.
<% Dim giorni(7)
giorni(0) = "domenica"
giorni(1) = "lunedì"
giorni(2) = "martedì"
giorni(3) = "mercoledì"
giorni(4) = "giovedì"
giorni(5) = "venerdì"
giorni(6) = "sabato" For Each giorno In giorni
response.write( giorno & "<br />" ) Next
%>
Do..While...Loop
Il ciclo do..loop, fa eseguire il blocco di codice viene ripetuto fintanto che una condizione è vera .
Do While (condizione)
codice Loop
Do..Loop...While
La differenza con il precedente è che prima viene eseguito il codice, poi valutata l'espressione. Il codice dentro il ciclo sarà eseguito almeno una volta
Do
codice Loop While (condizione)
Do..Until..Loop
Utilizzando until, il codice viene eseguito fino a quando la condizione non diventa verà (se è falsa eseguo il codice, quando diventa vera esco). E' l'esatto opposto del while
Do Until (condizione)
codice Loop
Do..Until..Loop
La differenza con il precedente è che prima viene eseguito il codice, poi valutata l'espressione. Il codice dentro il ciclo sarà eseguito almeno una volta
Do
codice Loop Until (condizione)
Il codice dentro il ciclo sarà eseguito almeno una volta.
Exit
Per uscire da un ciclo di tipo Do...Loop si può usare la parola chiave Exit.
Do Until i = 10
i = i - 1 If (i < 10) Then Exit Do
Loop
While...Wend
Un modo analogo a do..loop per eseguire del codice ciclico è utilizzarela sintassi while..wend