0% found this document useful (0 votes)
45 views1 page

Front-End Development Track - One Million Arab Coders - Udacity - Function Expressions

The document discusses function expressions in JavaScript. It explains that functions can be stored in variables, which are called function expressions. It also discusses the difference between how hoisting impacts declared functions versus function expressions, noting that declared functions are hoisted while function expressions are not.

Uploaded by

bisho.don.bosco
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
45 views1 page

Front-End Development Track - One Million Arab Coders - Udacity - Function Expressions

The document discusses function expressions in JavaScript. It explains that functions can be stored in variables, which are called function expressions. It also discusses the difference between how hoisting impacts declared functions versus function expressions, noting that declared functions are hoisted while function expressions are not.

Uploaded by

bisho.don.bosco
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 1

4/4/2019 Front-End Development Track - One Million Arab Coders - Udacity

Lesson 5:
Function Expressions SEND FEEDBACK
Functions

SEARCH
Function Expressions
RESOURCES

CONCEPTS

1. Intro to Functions

2. Function Example

3. Declaring Functions

4. Function Recap

5. Quiz: Laugh it O 1 (5-1)

6. Quiz: Laugh it O 2 (5-2)

7. Return Values Once you know how to declare a function, a whole new set of possibilities will open up to you.

For instance, remember how you can store anything you want in a variable? Well, in JavaScript, you can
8. Using Return Values also store functions in variables. When a function is stored inside a variable it's called a function
expression.
9. Scope

var catSays = function(max) {


10. Scope Example var catMessage = "";
for (var i = 0; i < max; i++) {
11. Shadowing catMessage += "meow ";
}
12. Global Variables return catMessage;
};

13. Scope Recap

Notice how the function keyword no longer has a name.


14. Hoisting

var catSays = function(max) {


15. Hoisting Recap // code here
};
16. Quiz: Build a Triangle (5-3)

It's an anonymous function, a function with no name, and you've stored it in a variable called
17. Function Expressions catSays .

And, if you try accessing the value of the variable catSays , you'll even see the function returned back
18. Patterns with Function Expressio…
to you.

19. Function Expression Recap


catSays;

20. Quiz: Laugh (5-4)

Returns:
21. Quiz: Cry (5-5)

function(max) {
22. Quiz: Inline (5-6) var catMessage = ""
for (var i = 0; i < max; i++) {
23. Lesson 5 Summary catMessage += "meow ";
}
return catMessage;
}

Function expressions and hoisting


Deciding when to use a function expression and when to use a function declaration can depend on a
few things, and you will see some ways to use them in the next section. But, one thing you'll want to be
careful of, is hoisting.

All function declarations are hoisted and loaded before the script is actually run. Function expressions are
not hoisted, since they involve variable assignment, and only variable declarations are hoisted. The
function expression will not be loaded until the interpreter reaches it in the script.

This animation is showing the di erence between how hoisting impacts declared functions vs. function
expressions. Notice how in the animation the function expression is not hoisted, but the declared function is
hoisted.

NEXT

https://classroom.udacity.com/nanodegrees/nd001-1mac-v2/parts/000fb1b1-f266-47b1-8bc8-ad6f350f9861/modules/7336c861-9b62-462c-adaa-ed118ff42638/lessons/f576c670-f3fd-48df-bfb9-d2ac2da1ddfa/concepts/d5db8bf6-029e-4a22-bc65-2346b810d019 1/1

You might also like