Bird
Raised Fist0
Javascriptprogramming~5 mins

Do–while loop in Javascript

Choose your learning style10 modes available
Introduction

A do-while loop helps you run a block of code at least once, then keep repeating it while a condition is true.

When you want to ask a question and repeat it until the answer is correct.
When you need to show a menu and keep asking for choices until the user wants to stop.
When you want to process data at least once before checking if more work is needed.
Syntax
Javascript
do {
  // code to run
} while (condition);

The code inside do always runs at least once before the condition is checked.

The while condition is checked after running the code block.

Examples
This prints numbers 1 to 3, increasing count each time.
Javascript
let count = 1;
do {
  console.log(count);
  count++;
} while (count <= 3);
This keeps asking the user to type 'yes' before stopping.
Javascript
let input;
do {
  input = prompt('Type yes to stop');
} while (input !== 'yes');
Sample Program

This program prints the number starting from 5 down to 1, counting down by one each time.

Javascript
let number = 5;
do {
  console.log(`Number is ${number}`);
  number--;
} while (number > 0);
OutputSuccess
Important Notes

Remember, the loop runs the code first, then checks the condition.

If the condition is false at the start, the code still runs once.

Summary

Do-while loops run code at least once before checking the condition.

Use them when you want to repeat something but must do it at least once.

Practice

(1/5)
1. What is the main difference between a do-while loop and a while loop in JavaScript?
easy
A. A while loop always runs the code block at least once.
B. A do-while loop runs the code block at least once before checking the condition.
C. A do-while loop never checks the condition.
D. A while loop runs the code block only if the condition is false.

Solution

  1. Step 1: Understand do-while loop behavior

    A do-while loop executes the code block first, then checks the condition to decide if it should repeat.
  2. Step 2: Compare with while loop

    A while loop checks the condition before running the code block, so it may not run at all if the condition is false initially.
  3. Final Answer:

    A do-while loop runs the code block at least once before checking the condition. -> Option B
  4. Quick Check:

    do-while runs once before condition [OK]
Hint: Remember: do-while runs code first, then checks condition [OK]
Common Mistakes:
  • Thinking while loop always runs once
  • Believing do-while skips condition check
  • Confusing order of execution and condition check
2. Which of the following is the correct syntax for a do-while loop in JavaScript?
easy
A. do (condition) { /* code */ };
B. while (condition) { /* code */ } do;
C. do { /* code */ } while (condition);
D. while { /* code */ } do (condition);

Solution

  1. Step 1: Recall correct do-while syntax

    The do-while loop starts with do, then the code block in braces, followed by while with the condition in parentheses and a semicolon.
  2. Step 2: Check each option

    do { /* code */ } while (condition); matches the correct syntax exactly. Others have wrong order or missing parts.
  3. Final Answer:

    do { /* code */ } while (condition); -> Option C
  4. Quick Check:

    Syntax: do { } while(condition); [OK]
Hint: Syntax always: do { } while(condition); ends with semicolon [OK]
Common Mistakes:
  • Forgetting the semicolon after while(condition)
  • Placing while before do
  • Using parentheses incorrectly around code block
3. What will be the output of the following code?
let count = 3;
do {
  console.log(count);
  count--;
} while (count > 0);
medium
A. 3 2 1
B. 3 2 1 0
C. 2 1 0
D. 1 2 3

Solution

  1. Step 1: Trace the loop iterations

    Initial count is 3. The loop prints count, then decreases it by 1. It repeats while count > 0.
  2. Step 2: List printed values

    First print: 3, count becomes 2
    Second print: 2, count becomes 1
    Third print: 1, count becomes 0
    Loop stops because count is not > 0.
  3. Final Answer:

    3 2 1 -> Option A
  4. Quick Check:

    Prints 3,2,1 then stops [OK]
Hint: Count down from 3, print before decrement, stop when zero [OK]
Common Mistakes:
  • Including 0 in output
  • Printing after decrement instead of before
  • Confusing loop condition direction
4. Identify the error in this do-while loop code:
let i = 0;
do {
  console.log(i);
  i++
} while i < 3;
medium
A. Missing semicolon after i++ inside the loop.
B. The loop condition should be inside curly braces.
C. Variable i is not initialized.
D. Missing parentheses around the condition in while statement.

Solution

  1. Step 1: Check the while condition syntax

    The condition after while must be inside parentheses. Here, it is written as while i < 3; without parentheses.
  2. Step 2: Verify other parts

    Missing semicolon after i++ is allowed in JavaScript (automatic semicolon insertion). Variable i is initialized. Condition does not go inside braces, only parentheses.
  3. Final Answer:

    Missing parentheses around the condition in while statement. -> Option D
  4. Quick Check:

    Condition must be in ( ) after while [OK]
Hint: Always put condition in parentheses after while [OK]
Common Mistakes:
  • Omitting parentheses around while condition
  • Thinking semicolon inside loop is mandatory
  • Putting condition inside curly braces
5. You want to prompt a user to enter a number greater than 10. Which do-while loop code correctly repeats the prompt until the user enters a valid number?
hard
A. let num; do { num = prompt('Enter a number > 10'); } while (num <= 10);
B. let num = 0; do { num = prompt('Enter a number > 10'); } while (num < 10);
C. let num; do { num = prompt('Enter a number > 10'); } while (num < 10);
D. let num; do { num = prompt('Enter a number > 10'); } while (num > 10);

Solution

  1. Step 1: Understand the condition needed

    The loop should continue prompting while the entered number is less than or equal to 10. Since prompt returns a string, comparison with 10 works if user enters a number string.
  2. Step 2: Check each option

    let num; do { num = prompt('Enter a number > 10'); } while (num <= 10);: while (num <= 10) - correct condition to reject 10 or less; uninitialized num fine in do-while.
    let num = 0; do { num = prompt('Enter a number > 10'); } while (num < 10);: while (num < 10) - accepts 10 incorrectly; unnecessary init.
    let num; do { num = prompt('Enter a number > 10'); } while (num < 10);: while (num < 10) - accepts 10 incorrectly.
    let num; do { num = prompt('Enter a number > 10'); } while (num > 10);: while (num > 10) - loops when input is valid.
  3. Final Answer:

    let num; do { num = prompt('Enter a number > 10'); } while (num <= 10); -> Option A
  4. Quick Check:

    Repeat while input <= 10 [OK]
Hint: Repeat prompt while input <= 10 [OK]
Common Mistakes:
  • Using wrong comparison operator
  • Loop condition reversed
  • Initializing variable unnecessarily
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard