A while loop helps you repeat a set of actions as long as a condition is true. It saves time by avoiding writing the same code again and again.
When you want to keep asking a user for input until they give a valid answer.
When you need to count or process items until a certain limit is reached.
When you want to repeat a task but don't know in advance how many times it will run.
When you want to keep checking if something has happened and stop once it does.
Syntax
Javascript
while (condition) {
// code to run repeatedly
}
The condition is checked before each loop. If it is true, the code inside runs.
If the condition is false at the start, the code inside will not run at all.
Examples
This prints numbers 0, 1, and 2. The loop stops when count reaches 3.
Javascript
let count = 0;
while (count < 3) {
console.log(count);
count++;
}
This keeps asking the user to type 'yes' to stop the loop.
Javascript
let input = '';
while (input !== 'yes') {
input = prompt('Type yes to stop');
}
Sample Program
This program prints numbers from 1 to 5 using a while loop.
Javascript
let number = 1;
while (number <= 5) {
console.log(`Number is ${number}`);
number++;
}
OutputSuccess
Important Notes
Make sure the condition will eventually become false, or the loop will run forever.
You can use break inside the loop to stop it early if needed.
Summary
A while loop repeats code while a condition is true.
It checks the condition before running the code each time.
Use it when you don't know how many times you need to repeat something.
Practice
(1/5)
1. What does a while loop do in JavaScript?
easy
A. Repeats code while a condition is true
B. Runs code only once
C. Runs code a fixed number of times
D. Stops the program immediately
Solution
Step 1: Understand the purpose of a while loop
A while loop runs repeatedly as long as its condition stays true.
Step 2: Compare options with the definition
Only Repeats code while a condition is true correctly describes this behavior.
Final Answer:
Repeats code while a condition is true -> Option A
Quick Check:
while loop = repeats while true [OK]
Hint: Remember: while loops run only if condition is true [OK]
Common Mistakes:
Thinking while loops run a fixed number of times
Confusing while with if statement
Assuming while loops run at least once
2. Which of the following is the correct syntax for a while loop in JavaScript?
easy
A. while condition { /* code */ }
B. while (condition) { /* code */ }
C. while: (condition) { /* code */ }
D. while (condition); { /* code */ }
Solution
Step 1: Recall JavaScript while loop syntax
The correct syntax uses parentheses around the condition and curly braces for the code block: while (condition) { ... }.
Step 2: Check each option
while (condition) { /* code */ } matches the correct syntax exactly.
Final Answer:
while (condition) { /* code */ } -> Option B
Quick Check:
Correct syntax = while (condition) { } [OK]
Hint: Look for parentheses around condition and braces for code [OK]
Common Mistakes:
Omitting parentheses around the condition
Using a semicolon after while condition
Adding a colon after while keyword
3. What will be the output of this code?
let count = 1;
while (count <= 3) {
console.log(count);
count++;
}
medium
A. 0 1 2 3
B. 1 2 3 4
C. 3 2 1
D. 1 2 3
Solution
Step 1: Analyze the loop condition and increments
The loop starts with count = 1 and runs while count is less than or equal to 3. Each time, it prints count and then adds 1.
Step 2: Trace the output values
It prints 1, then 2, then 3. When count becomes 4, the condition fails and loop stops.
Final Answer:
1 2 3 -> Option D
Quick Check:
Prints 1 to 3 inclusive [OK]
Hint: Count starts at 1 and stops after 3 [OK]
Common Mistakes:
Including 4 in output
Starting count at 0 instead of 1
Printing in reverse order
4. Find the error in this code snippet:
let i = 0;
while i < 5 {
console.log(i);
i++;
}
medium
A. Missing semicolon after console.log
B. Variable i is not declared
C. Missing parentheses around the condition
D. Increment operator is incorrect
Solution
Step 1: Check while loop syntax
JavaScript requires parentheses around the condition in a while loop.
Step 2: Identify the error in the code
The code has while i < 5 { but it should be while (i < 5) {.
Final Answer:
Missing parentheses around the condition -> Option C
Quick Check:
while needs (condition) [OK]
Hint: Always put condition inside parentheses in while [OK]
Common Mistakes:
Forgetting parentheses around condition
Adding semicolon after while condition
Misusing increment operator
5. You want to print all even numbers from 2 to 10 using a while loop. Which code correctly does this?
hard
A. let num = 2;
while (num <= 10) {
console.log(num);
num += 2;
}
B. let num = 1;
while (num < 10) {
if (num % 2 === 0) console.log(num);
num++;
}
C. let num = 2;
while (num < 10) {
console.log(num);
num += 2;
}
D. let num = 0;
while (num <= 10) {
console.log(num);
num += 2;
}
Solution
Step 1: Understand the goal and loop conditions
We want to print even numbers from 2 to 10 inclusive. So the loop must start at 2 and run while number is less than or equal to 10.
Step 2: Check each option for correctness
let num = 2;
while (num <= 10) {
console.log(num);
num += 2;
} starts at 2, prints number, then adds 2, stopping at 10. This prints 2,4,6,8,10 correctly. let num = 1;
while (num < 10) {
if (num % 2 === 0) console.log(num);
num++;
} starts at 1, uses modulo check, but since num < 10 stops after 9, printing 2,4,6,8 missing 10. let num = 2;
while (num < 10) {
console.log(num);
num += 2;
} stops before 10, missing 10. let num = 0;
while (num <= 10) {
console.log(num);
num += 2;
} starts at 0, which is not in the required range.
Final Answer:
let num = 2;
while (num <= 10) {
console.log(num);
num += 2;
} -> Option A
Quick Check:
Start 2, add 2, stop at 10 [OK]
Hint: Start at 2, add 2 each loop, stop at 10 [OK]
Common Mistakes:
Starting at 0 or 1 instead of 2
Stopping before 10
Not incrementing by 2
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.