Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

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

Samuel Igborgbor
Samuel Igborgbor
4,335 Points

Creat a "do...while loop"

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.

script.js
var secret;
correctGues = false;

do {
var secret = prompt("What is the secret password?");
  if(secret === 'sesame') {
  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>

2 Answers

The error is on this line:

correctGues = false;

It should read

var correctGuess = false;

Note the extra 's'!

Samuel Igborgbor
Samuel Igborgbor
4,335 Points

Still did not work. Error message says 'Bummer! You should declare the secret variable before the loop. Otherwise, you re-create that variable each time through the loop.'

Sorry, I didn't see that one as well. You need to remove the var inside the do.

You have already defined the variable secret outside the loop so just need to update it inside the loop and not re-create it each time.