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

Parse Error -- not sure where I went wrong

I'm not seeing the issue with this, and I keep getting a parse error. I thought the prompt secret was what it's looking for, and I'm not really sure where this parse error is.

script.js
var secret = prompt("What is the secret password?");
do {
    prompt secret;
}
while ( secret !== "sesame" );
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>

3 Answers

Cooper Runstein
Cooper Runstein
11,836 Points

Your prompt inside the do while loop is not necessary and causing the loop to not work the way you want it to. If you remove that, everything should work as you intended, you already have the necessary prompt in the 'secret' variable.

Thanks. I removed it, but I'd think that that kind of takes away the purpose of the challenge from JavaScript Loops, Arrays and Objects challenge #1 -- creating a do...while... loop.

When I removed it, then I received an 'The prompt() method should go INSIDE the do...while loop.'.

Cooper Runstein
Cooper Runstein
11,836 Points

Right, you can always declare the variable secret outside the loop, but leave it empty, and then set secret to the prompt inside the do while loop.

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

Thanks!