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 A Closer Look At Loop Conditions

Not sure how to pass WHILE challenge.

The code in app.js just opens a prompt, asks for a password, and writes to the document. Something is missing. Add a while loop, so that a prompt keeps appearing until the user types "sesame" into the prompt.

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

/*

while (i < 10) {
    text += "The number is " + i;
    i++;
}

while (quess !== randomNumber) {
  quess = getRandomNumber(upper);
  attempts += 1;
}

document.write("The random number was " + randomNumber );
document.write("it took the computer " + attempts);
index.html
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>JavaScript Loops</title>
</head>
<body>
<script src="app.js"></script>
</body>
</html>

This is the primary condition:

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

document.write("You know the secret password. Welcome.");

2 Answers

Chase Swanson
PLUS
Chase Swanson
Courses Plus Student 8,886 Points

The code block in the while loop is off. You need to keep prompting the question until they get it right.

Remember you do not need to define the variable again with var. That happened in the first statement.

Niclas Valentiner
Niclas Valentiner
8,947 Points

As an added comment: In JavaScript if you make a variable with "var" in front of it you declare it. A variable name can only ever be declared once, if you try to declare it more the program throws an error. You can assign it a value as many times as you want but you just use the variable name in that case (no "var" in front of it).

And just to reiterate what Chase said: Your while loop doesn't include the prompt so the prompt is only run once.

Thank you guys