Functions as Variables

Whenever I am working with folks who are just learning JavaScript, they seem to get hung up on functions until the light bulb goes on. One of the aspects of functions is understanding that functions are just fancy variables. What does this mean? It means that you can build meaningful functions and utilize names that make sense. Here is an example…

[code lang=”js”]
var someVariable = function() {
// Do some geeky code stuff
}; // Should have a semi-colon here since a variable is being declared
// ‘Traditional’ function
function foobar(){
// Do some more geeky code stuff
}
[/code]

​As you can see, the “guts” of the function is the same. You are simply storing the function literal into a variable instead of naming the function in the traditional manner. So how do you then call this function? I am glad you asked…

[code lang=”js”]
// Call the function literal stored in the variable
someVariable();
[/code]

The variable someVariable is simply a reference to the function…like your mailing address to your house.

Now…what about arguments/parameters of functions. How would you work with those in this scenario? Turns out, it is fairly easy…

[code lang=”js”]
var someVariable = function(someArgument) {
// Do some geeky code stuff
};
// Call the function literal stored in the variable someVariable(argument);
[/code]

Some of you may ask, “Why not just do it the ‘old’ way?” That is perfectly fine. I like this way only because I like to see my variables in my code in this manner and utilize them. In other words, it is many times a personal preference.

Happy Coding!

Clay Hess

More To Explore

Developer working with styles at a coffeehouse with code swirling around him
Code

The CSS Object Model (CSSOM): A Practical Guide

If you’ve ever used JavaScript to read or modify styles in the browser, you’ve touched the CSS Object Model—often without realizing it. The CSSOM sits

Share This Post

small_c_popup.png

Need help?

Let's have a chat...


Login

Jump Back In!

Here at Webolution Designs, we love to learn. This includes sharing things we have learned with you. 

Register

Begin Your Learning Journey Today!

Come back inside to continue your learning journey.