Just as the if statement is the basic control statement that allows JavaScript to "make decisions," the while statement is the basic statement that allows JavaScript to perform repetitive actions. It has the following syntax:
while (expression) statement
The while statement works like this: first, the expression is evaluated. If it is false, JavaScript moves on to the next statement in the program. If it is true, then statement is executed, and expression is evaluated again. Again, if the value of expression is false, then JavaScript moves on to the next statement in the program; otherwise it executes the statement that forms the "body" of the loop. This cycle continues until the expression evaluates to false, at which point the while statement ends and JavaScript moves on. Note that you can create an infinite loop with the syntax while(true).
You usually do not want JavaScript to perform exactly the same operation over and over again, so in almost all loops, there are one or more variables that change with each iteration of the loop. Since the variables change, the actions performed by executing statement may differ each time through the loop. Furthermore, if the changing variable or variables are involved in the expression, then the value of the expression may be different each time through the loop. This is important, or an expression that starts off true would never change, and the loop would never end! Here is an example while loop:
count = 0; while (count < 10) { document.write(count + "<br>"); count++; }
As you can see, the variable count starts off at 0 in this example, and is incremented each time the body of the loop runs. Once the loop has executed ten times, the expression becomes false (i.e., the variable count is no longer less than 10), the while statement finishes, and JavaScript can move on to the next statement in the program. Most loops will have a counter variable like count. The variable names i, j, and k are commonly used as a loop counters, though you should use more descriptive names if it makes your code easier to understand.