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 trialJeffery Moore
3,634 PointsI 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.");
}
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.");
<!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
Courses Plus Student 8,692 PointsOr 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
231,269 PointsYou are asking it before the loop, and then again inside the loop.
Change the first line to just: var secret =
"";
Jeffery Moore
3,634 PointsI 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
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 !
Jeffery Moore
3,634 PointsTushar the code in the box wasn't the right code, it's the do while loop I wrote above it that was wrong.