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 Create a `do...while` loop

Samuel Igborgbor
Samuel Igborgbor
4,335 Points

Create a 'do...while' loop (JavaScript loop Array and Objects)

Question This is the code we used in the last code challenge. After learning about do...while loops, don't you think this would work better in the do...while style? Re-write the code to use a do...while loop.

var secret = prompt("What is the secret password?"); while ( secret !== "sesame" ) { secret = prompt("What is the secret password?");
} document.write("You know the secret password. Welcome.");

Answer

do { guess = prompt('What is the secret password?'); guessCount += 1; if (guess === secret) { correctGuess = true; } } while ( !correctGuess ) { document.write("You know the secret password. Welcome."); }

Response Bummer! There was an error with your code: ReferenceError: Can’t find variable: sesame

script.js
var secret = sesame;
var guess;
var guessCount = 0;
var correctGuess = false;




do {
  guess = prompt('What is the secret password?');
  guessCount += 1;
  if (guess === secret) {
   correctGuess = true;
  } 
} while ( !correctGuess ) {
  document.write("You know the secret password. Welcome.");
}
index.html
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>JavaScript Loops</title>
</head>
<body>
<script src="script.js"></script>
</body>
</html>

1 Answer

Steven Parker
Steven Parker
231,236 Points

You've gotten a bit too fancy here. For best results from a challenge, always do only what the instructions ask and nothing extra.

Here's a few hints:

  • you don't need extra variables, use just one like in the original code
  • keeping a count is not part of the challenge
  • you don't need a conditional if the loop expression checks the right thing
  • the "while" in a "do...while" ends the loop, there's no code block after it
  • string literals must be enclosed in quotes