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 trialTim Rowley
1,043 PointsCan't find my error. Says I'm missing else clause however when running the code I get the result it is looking for
var isAdmin = false; var isStudent = false;
if ( isAdmin ) { alert('Welcome administrator'); } else if (isStudent) { alert('Welcome student'); }
else ( isAdmin === false && isStudent === false);{ alert(" Who are you?"); }
var isAdmin = false;
var isStudent = false;
if ( isAdmin ) {
alert('Welcome administrator');
} else if (isStudent) {
alert('Welcome student');
}
else ( isAdmin === false && isStudent === false);{
alert(" Who are you?");
}
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JavaScript Basics</title>
</head>
<body>
<script src="script.js"></script>
</body>
</html>
2 Answers
Matthew Panton
15,228 PointsAfter the else keyword, you don't write have any parenthesis because the else { } block is the fallback code for when none of the conditions in previous if and ifelse statements is evaluate to true. Your code should look like this:
var isAdmin = false; var isStudent = false;
if ( isAdmin ) { alert('Welcome administrator'); } else if (isStudent) { alert('Welcome student'); } else { alert(" Who are you?"); }
Chase Swanson
Courses Plus Student 8,886 PointsTim,
The quick answer is you should not have a semi-colon after the conditional in the else statement. The semi-colon is stopping the rest of the clause.
Also, you really do not need the conditional in the else at all. You have already tested for the only two possibilities you care about. No matter what else they enter, they should get "Who are you?" There is no way both of them can be True in this scenario.
Tim Rowley
1,043 PointsThank you Chase, I appreciate it
Chase Swanson
Courses Plus Student 8,886 PointsChase Swanson
Courses Plus Student 8,886 PointsMatthew is correct.
Your error was coming from the the semi colon though.
Tim Rowley
1,043 PointsTim Rowley
1,043 PointsThank you Matt!