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

How do I return a function?

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

script.js
function getYear ()
{ var year = new Date().getFullYear();
 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>

3 Answers

Matthias Margot
Matthias Margot
7,236 Points

Like this:

function returnFunction () {
  return (function () { console.log('hi'); });
}

var returnedFunction = returnFunction(); // this function call just returns the function in the return statement
returnedFunction(); // this logs 'hi'

Quick sidenote: the braces around the function in the return statement are not actually necessary I just put them there so it's a little easier to understand what's happening exactly. Putting the return function on a single line is also just something I did for easier understandability.

By the way what I'm returning in my code is called a function expression (pretty big deal in JS) you should read a bit about it to fully understand what's going on here.

Thank you, I just can't grasp this concept. No idea why. A mental block or something. thanks for trying though.

ding ding ding, Now I understand. Thanks !!!