r/JavaScriptTips • • May 09 '20

Why use => instead of function()

Hi, learning ES6 right now on freecodecamp and I am a bit confused. It provides this:

const myFunc = function() { const myVar = "value"; return myVar; }

Stating it can be written as this instead:

const myFunc = () => "value";

I understand that if its a one off function and only a return needs to be executed, then you can simplify it with the arrow function syntax. Does that mean this is a work around to const not letting its variable identifier to be changed, so an empty function is created so myFunc can take on that value?

7 Upvotes

7 comments sorted by

View all comments

2

u/cyberjds Jun 06 '20

Call me a n00b, but I really don't get examples like op. Or maybe it's because I'm coming from procedural programming background, but what do they mean 'one off function'? Doesn't a function should be reusable? To my understanding, function is used to hide every little details and complexities so that it's easy to understand, and follow the main flow of the code.

Given above example, I can't help myself but ask, why don't I just do...

const myConst = 'value';

instead of declaring a function?

Give me an actual example that shows why arrow function expression is beneficial.

All I can smell is 'Functional', but I don't know what it is.

1

u/[deleted] Jun 29 '20

Simply to make things quicker, and because functions with no names simply don't need to be re-used. That's why they are one off. If your program is filled with more wording then it needs, it reflects poorly on you. Especially since arrow functions are neater and more readable.