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.

Brendan Warford
Front End Web Development Techdegree Student 3,156 PointsI have no idea why this doesn't work :/
So I'm currently trying to turn this 'while' loop into a 'do while' loop. I tried to put the prompt inside to loop yet it tells me to do just that. sometimes it states that it is not declared as well. I know this is probably an easy fix I'm just stuck on it.
var secret = prompt("What is the secret password?");
do {
prompt(secret);
} while ( secret !== "sesame" )
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>

rydavim
18,780 PointsIf someone below has fully addressed your question, I would also encourage you to vote and mark as best answer. Happy coding!
1 Answer

<noob />
17,047 PointsHi :} the sturcture of a do.. while loop is like that:
do {
}while(something);
you did one important thing well, u have to declare the secret var outside the loop because if u will create it inside the loop evreytime the loop will run u recreate this variable.
explantion:
var secret;
//entring the loop
do {
//keep asking for a prompt and assign the user reposnse to "secret"
secret = prompt("What is the secret password?");
//as long as the value in "secret" is not "seasme"
} while ( secret !== "sesame" );
//this statement will run only if secret pass the while check
document.write("You know the secret password. Welcome.");
hope this helps.

Brendan Warford
Front End Web Development Techdegree Student 3,156 PointsThank you I appreciate it. Pretty simple fix :)
Kevin Anderson
2,977 PointsKevin Anderson
2,977 PointsYou solution does, for the most part work. However, you are prompting the user once outside the loop. Then again immediately after entering the loop. Move your code around a bit:
do { var secret = prompt("What is the secret password?"); } while ( secret !== "sesame" ) document.write("You know the secret password. Welcome.");