Table of Contents

8.4 The for Loop

A for loop is essentially synonymous with a while loop, but it is written with more compact syntax. Most notably, the loop header can contain both initialization and update statements in addition to the test expression.

Here's the syntax of the for loop:

for (initialization; condition; update) {
  substatements
}

The for loop places the key components of a loop tidily in the loop header, separated by semicolons. Before the first iteration of a for loop, the initialization statement is performed (once and only once). It is typically used to set the initial value of one or more iterator variables. As with other loops, if condition is true, substatements are executed. Otherwise, the loop ends. Even though it appears in the loop header, the update statement is executed at the end of each loop iteration, before condition is tested again to see if the loop should continue. Here's a typical for loop that simply counts from 1 to 10:

for (var i = 1; i <= 10; i++) {
  trace("Now serving number " + i);
}

It's easier to understand how a for loop works when you see its equivalent constructed using the while loop syntax:

var i = 1;
while (i <= 10) {
  trace("Now serving number " + i);
  i++;
}

Once you're used to the for syntax, you'll find it saves space and allows for easy interpretation of the loop's body and controls.

8.4.1 Multiple Iterators in for Loops

If we want to control more than one factor in a loop, we can use more than one iterator variable. A while loop with multiple iterators might look like this:

var i = 1;
var j = 10;
while (i <= 10) {
  trace("Going up " + i);
  trace("Going down " + j);
  i++;
  j--;
}

The same effect can be achieved in a for statement using the comma operator:

for (var i = 1, j = 10; i <= 10; i++, j--) {
  trace("Going up " + i);
  trace("Going down " + j);
}

Notice that the var keyword is listed only once�it applies to all supplied variables.


Table of Contents