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 Basics (Retired) Making Decisions with Conditional Statements Super Conditional Challenge

Thaddeus Lorenz
Thaddeus Lorenz
3,434 Points

Really dont understand what its asking here

I understand the concepts about the arguments being true or false. But Ive tried just about everything and I still dont know why its not working. Please help

script.js
var money = 9;
var today = 'Friday'

if ( money >= 100 && today === 'Friday' ) {
  alert("Time to go to the theater");    
} else if ( money >= 50 || today === 'Friday' ) {
  alert("Time for a movie and dinner");    
} else if ( money > 10 && today === 'Friday' ) {
  alert("Time for a movie");   
} else if ( today === 'Friday' ) {
  alert("It's Friday, but I don't have enough money to go out");   
} else {
  alert("This isn't Friday. I need to stay home.");
}
index.html
<!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>
philip busacco
philip busacco
5,188 Points

Hi, I'm new but I can point out some stuff.

1- you need a semicolon after Friday. 2 - you have an OR statement on the first else if. So if you compare money >= 50 OR today === Friday. This is TRUE. If one condition is true with an OR logic operator then that evaluates to TRUE. So it's TRUE , it is Friday so the alert statement will run. Change it to && and you will see it passes.

1 Answer

Dave McFarland
STAFF
Dave McFarland
Treehouse Teacher

Hi Thaddeus Lorenz

The alert dialog that appears when I run your code in the code challenge is Time for a movie and dinner. This means the code in this part of the conditional is evaluating to true:

} else if ( money >= 50 || today === 'Friday' ) {

The || characters mean 'OR' , so if EITHER you have $50 or more OR it's Friday, then the message appears. However, you should only see the alert if BOTH are true -- you have more than 50 AND it's Friday. Use the && operator to create a logical AND condition here.

Hope that helps!