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 Basics (Retired) Creating Reusable Code with Functions Returning a Value from a Function

Why does task 1 keep not passing when I am leaving the code from the previous task in place?

JavaScript getYear task 3 out of 3

script.js
function getYear (){
  var year = new Date().getFullYear();
  var yearToday = return year;

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

2 Answers

Ryan Ruscett
Ryan Ruscett
23,307 Points

This is because when you finish task 1. It checks task 1. When you go to task 2. It runs the checks for task 1 and 2. When you do task thee. It runs the task for 1, 2 and 3. But in the event where there is a compiler issue. It can't compile the code and thus not run any of the test. SO it just says test 1 failed. Cause it did, sine it couldn't compile the page to run test 1, 2 in order to get to three.

BUT you are soooo close.

You return year but you do not return the variable to a variable inside the same function.

Like this.

unction getYear (){

  var year = new Date().getFullYear();
  return year
}

yearToday = getYear();

Thank you Ryan!

I forgot you can simply call a function in a variable.

rydavim
rydavim
18,786 Points

The return statement should be on it's own line, as the last thing in the function.

function getYear() {
  var year = new Date().getFullYear();
  return year;
}

If you've gotten past that bit and on to task three, your call to the function should be outside of it completely. So whatever line you write for step three should go after your code from the other steps.

function getYear() {
  var year = new Date().getFullYear();
  return year;
}
// Step three goes down here, please!
// Remember that you can set a variable equal to a function call and it will hold the return value!

Awesome, thank you for the quick reply!