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

Jeffery Moore
Jeffery Moore
3,634 Points

I need help with my code, why am I getting the prompt twice?

var secret = prompt("What is the secret password?"); var secretAnswer = false;

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

script.js
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.");
index.html
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>JavaScript Loops</title>
</head>
<body>
<script src="script.js"></script>
</body>
</html>

4 Answers

Tushar Singh
PLUS
Tushar Singh
Courses Plus Student 8,692 Points

Or you can use a 'do while' loop here. It will pop up a prompt at least once. Then as your while part suggests, it will keep on bugging the user unless he enters "sesame".

Steven Parker
Steven Parker
229,732 Points

You are asking it before the loop, and then again inside the loop.

Change the first line to just: var secret = "";

Jeffery Moore
Jeffery Moore
3,634 Points

I ended up changing it to var secret;, I realized that I only needed to declare, not define it. Thank you guys so much for the support, I was pulling my hair out on that on last night!!

Tushar Singh
Tushar Singh
Courses Plus Student 8,692 Points

"I was pulling my hair out on that on last night!!"

Congrats, I've realized one thing when I want to pull my hair out and then I solve it it's an awesome feeling and it's good you want to understand the logic behind the code rather than just copy-paste stuff. Nice to meet you ! :wink:

Jeffery Moore
Jeffery Moore
3,634 Points

Tushar the code in the box wasn't the right code, it's the do while loop I wrote above it that was wrong.