ASP Article

Looping with ASP

Looping statements are used to run the same block of code a specified number of times.

In ASP there are four looping statements:

  • For...Next statement - runs code a specified number of times
  • For Each...Next statement - runs code for each item in a collection or each element of an array
  • Do...Loop statement - loops while or until a condition is true
  • While...Wend statement - Do not use it - use the Do...Loop statement instead

For...Next Loop

Use the For...Next statement to run a block of code a specified number of times.

The For statement specifies the counter variable (i), and its start and end values.
The Next statement increases the counter variable (i) by one.

                    
For i = 0 To 5
  response.write("The number is " & i & "<br />")
Next

OUTPUT:
The number is 0
The number is 1
The number is 2
The number is 3
The number is 4
The number is 5
                    
                

Stepping

With the Step keyword, you can increase or decrease the counter variable by the value you specify.

In the example below, the counter variable (i) is INCREASED by two, each time the loop repeats.

                    
For i=2 To 10 Step 2
  response.write("The number is " & i & "<br />")
Next

OUTPUT:
The number is 2
The number is 4
The number is 6
The number is 8
The number is 10
                    
                

To decrease the counter variable, you must use a negative Step value. You must specify an end value that is less than the start value.

In the example below, the counter variable (i) is DECREASED by two, each time the loop repeats.

                    
For i=10 To 2 Step -2
  response.write("The number is " & i & "<br />")
Next

OUTPUT:
The number is 10
The number is 8
The number is 6
The number is 4
The number is 2
                    
                

Exit a For...Next

You can exit a For...Next statement with the Exit For keyword.

                    
For i=1 To 10
  If i=5 Then Exit For
  response.write("The number is " & i & "<br />")
Next

OUTPUT:
The number is 1
The number is 2
The number is 3
The number is 4
                    
                

For Each...Next Loop

A For Each...Next loop repeats a block of code for each item in a collection, or for each element of an array.

                    
Dim cars(2)
cars(0)="Volvo"
cars(1)="Saab"
cars(2)="BMW"

For Each x In cars
  response.write(x & "<br />")
Next

OUTPUT:
Volvo
Saab
BMW
                    
                

Do...Loop

The Do...Loop statement repeats a block of code while a condition is true, or until a condition becomes true.

Repeat Code While a Condition is True

You use the While keyword to check a condition in a Do...Loop statement.
In the code below if i equals 9, the code inside the loop will never be executed.

                    
Dim i: i = 9

Do While i>10
  response.write("i = " & i & "<br />")
Loop

OUTPUT:
                    
                

The code inside the loop below will be executed at least one time, even if i is less than 10.

                    
Dim i: i = 9

Do
  response.write("i = " & i & "<br />")
Loop While i>10

OUTPUT:
i = 9


                    
                

Repeat Code Until a Condition Becomes True

You use the Until keyword to check a condition in a Do...Loop statement.

If i equals 10, the code inside the loop will never be executed.

                    
Dim i: i = 1

Do Until i=10
  response.write("i = " & i & "<br />")
  i = i+1
Loop

OUTPUT:
i = 1
i = 2
i = 3
i = 4
i = 5
i = 6
i = 7
i = 8
i = 9
                    
                

The code inside this loop will be executed at least one time, even if i is equal to 10.

                    
Dim i: i = 10

Do
  response.write("i = " & i & "<br />")
Loop Until i=10

OUTPUT:
i = 10
                    
                

Exit a Do...Loop

You can exit a Do...Loop statement with the Exit Do keyword

                    
Do Until i=10
  i=i-1
  If i lt;10 Then Exit Do
Loop
                    
                

The code inside this loop will be executed as long as i is different from 10, and as long as i is greater than 10.

Loops and Conditionals are the heart of PHP and any code and is what makes it all tick! Happy Coding!