Looping Constructs: for, while, do-while Compared

In JavaScript, loops are like a superpower for doing the same task over and over without writing the same code many times. There are a few different types of loops, but the three main ones are for, while, and do-while. Each one has its special use.

for Loop

The for loop is like a one-stop shop for looping. It lets you set up your loop with three parts: where to start, when to stop, and how to change at each step.

for (let i = 0; i < 5; i++) {
  console.log(i); // This will log numbers 0 to 4
  • Use it when: You know exactly how many times you want to run the loop.

while Loop

The while loop is like a cautious friend. It only runs if a condition is true and keeps going until the condition is no longer true.

let i = 0;
while (i < 5) {
  console.log(i); // This will also log numbers 0 to 4
  • Use it when: You’re not sure how many times you’ll need to loop because it depends on something happening (like waiting for a user to click a button).

do-while Loop

The do-while loop is the optimistic sibling of the while loop. It runs at least once and then keeps going as long as the condition is true.

let i = 0;
do {
  console.log(i); // This will log 0 to 4, just like the others
} while (i < 5);
  • Use it when: You need to run your code at least once, but after that, it depends on a condition being true to keep going.

Key Differences

  • Initialization: In a for loop, you usually set up your counter at the beginning. With while and do-while, you set it up before entering the loop.
  • Checking Condition: for and while check the condition before running the loop body. do-while checks it after running the loop body once.
  • Usage: Use for when the number of iterations is known. Use while when the number of iterations is unknown, and the loop might not run at all. Use do-while when the loop should run at least once and then may continue based on a condition.

Quick Tip

Choosing the right loop can make your code cleaner and easier to understand. If you’re counting, for is often your best bet. If you’re waiting for something, think about while or do-while.


Loops are a big part of making your code work hard so you don’t have to. By understanding the differences between for, while, and do-while loops, you can pick the best one for any task.