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 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