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 Exiting Loops

Nicolas Queen
Nicolas Queen
7,331 Points

The script continues past 10 despite the while loop having guessCount < 10. Help?

Here is my code:

var randomNumber = getRandomNumber(10);
var guess;
var guessCount = 0;
var correctGuess = false;

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

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

if ( correctGuess ) {
  document.write('You guessed the number!');
  document.write('It took you ' + guessCount + ' tries to guess the number ' + randomNumber);

} else {
    document.write('<h1>Sorry.  You did not guess the number.</h1>');
}

What am I missing?

Andrew Robinson
Andrew Robinson
16,372 Points

It works fine for me in Chrome, nothing looks wrong at all.

Nicolas Queen
Nicolas Queen
7,331 Points

Hmm. I even took it out and tried it in Cloud9 from workspaces. It is supposed to allow ten guesses then stop. I tried it several times and it went into the 20s. Let me try again, though.

I also tried it in the chrome console and it works, I can't see anything wrong with this.

Nicolas Queen
Nicolas Queen
7,331 Points

OK, I was an idiot and missed something in the file structure. I basically had index.html pointing to the wrong place. Sigh... Time for a break.

Haha, details details. The code was right, that's the important part.