How to Pick Between a For Loop and While Loop | Built In (2024)

As a newcomer to coding, the while and for loops are the first two iteration structures you will learn. They’re critical to understand, as they open up a world of possibilities when paired with decision structures like if/else statements.

If you’re learning on your own or your instructor was not particularly opinionated, there’s a good chance you’re asking yourself, “How do I pick between the two?”

Difference Between a For Loop and While Loop

  • For Loop: A for loop is an iteration method that is best used when you know the number of iterations ahead of time. It’s always followed by the initialization, expression and increment statements.
  • While Loop: A while loop is an iteration method that is best used when you don't know the number of iterations ahead of time. The contents of the loop are executed as long as the expression evaluates to true.

We’re here to answer that question. While I’ll be using JavaScript for all the code examples, the concepts and opinions really extend to any language that supports both of these.

Let’s dive in. We’ll begin with a brief recap of the syntax involved for both — just in case.

What Is a For Loop?

A for loop is more structured than the while loop. The keyword for is used, followed by three statements:

  1. Initialization: Executed before the loop begins.
  2. Expression: Evaluated before each iteration, exits the loop when false.
  3. Increment: Executed at the end of each iteration.
for(count=1; count < 10; count++) { console.log(count);}

The increment does not have to be ++, but you’ll see that the most often.

So, in summary, the while loop has a looser syntax, and the for loop has a more rigid syntax. A while loop expects some sort of modification to the variable in the body, whereas everything is in the for loop’s definition.

More on Software DevelopmentHow to Undo the Last Commit Using Git Reset Command

What Is a While Loop?

A while loop has lower overhead between the two iteration structures. The loop consists of the keyword while followed by an expression and curly braces. The contents of the loop — what is between the curly braces — are executed as long as the expression evaluates to true.

while(count < 10) { console.log(count);}

Now, the example above is incomplete because a while loop needs a way to eventually exit the loop. Normally, this is done by modifying the variable in the expression.

let count = 1;while(count < 10) { console.log(count); count++;}

More on JavaScript5 Ways to Check If an Object Is Empty in JavaScript

For Loops vs. While Loops

Deciding which loop to use is ultimately a judgment call. Don’t let my opinion sway you away from what’s comfortable for your own eyes, especially if you’re a beginner.

There are other more advanced iteration structures that you can eventually grow to learn, so don’t get hung up on deciding between these two.

With that said, my universal rule for choosing between a while loop and for loop is that I use while loops when I do not know the number of iterations ahead of time and for loops when I do know.

Let’s go through a few examples of each:

  • Use a for loop to iterate over an array.
  • Use a for loop when you know the loop should execute n times.
  • Use a while loop for reading a file into a variable.
  • Use a while loop when asking for user input.
  • Use a while loop when the increment value is nonstandard.
How to Pick Between a For Loop and While Loop | Built In (2024)
Top Articles
Latest Posts
Article information

Author: Domingo Moore

Last Updated:

Views: 5831

Rating: 4.2 / 5 (53 voted)

Reviews: 92% of readers found this page helpful

Author information

Name: Domingo Moore

Birthday: 1997-05-20

Address: 6485 Kohler Route, Antonioton, VT 77375-0299

Phone: +3213869077934

Job: Sales Analyst

Hobby: Kayaking, Roller skating, Cabaret, Rugby, Homebrewing, Creative writing, amateur radio

Introduction: My name is Domingo Moore, I am a attractive, gorgeous, funny, jolly, spotless, nice, fantastic person who loves writing and wants to share my knowledge and understanding with you.