Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

JavaScript JavaScript Loops, Arrays and Objects Simplify Repetitive Tasks with Loops `do ... while` Loops

Irfan Hussain
PLUS
Irfan Hussain
Courses Plus Student 6,593 Points

Do while loop, prompt windows keep pop-up if i repeat same value

In do while loop video we built a program to ask user choose the number between 1 to 10. My question is that if we repeat same value that program give endless loop.

Irfan Hussain
Irfan Hussain
Courses Plus Student 6,593 Points

code is bellow: var randomNumber = getRandomNumber(2); var guess; var guessCount = 0; var correctGuess = false;

function getRandomNumber( upper ) { var num = Math.floor(Math.random() * upper) + 1; return num; }

do { guess = prompt('I am thinking of a number between 1 and 2. What is it?'); guessCount += 1; if (parseInt(guess) === randomNumber) { correctGuess = true; }
} while ( ! correctGuess )

document.write('<h1>You guessed the number!</h1>'); document.write('It took you ' + guessCount + ' tries to guess the number ' + randomNumber);

2 Answers

Chase Setser
Chase Setser
3,802 Points

It doesn't change the number every guess. It only changes the number when the page is reloaded.

Steven Parker
Steven Parker
231,269 Points

This program will keep asking you to guess until you get the number right. It's not "endless" unless you make it that way by always guessing wrong.

So I guess the answer to your question is "yes", the loop is endless if you keep guessing the wrong number.