Skip to content

Commit a894f82

Browse files
authored
Merge pull request #371 from brentguf/function-expressions
Function expressions
2 parents 84db86f + f7ddc6e commit a894f82

File tree

1 file changed

+9
-10
lines changed
  • 1-js/02-first-steps/15-function-expressions-arrows

1 file changed

+9
-10
lines changed

1-js/02-first-steps/15-function-expressions-arrows/article.md

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -185,9 +185,8 @@ First, the syntax: how to see what is what in the code.
185185
return a + b;
186186
}
187187
```
188-
- *Function Expression:* a function, created inside an expression or inside another syntax construct.
189-
190-
Here, the function is created at the right side of the "assignment expression =":
188+
- *Function Expression:* a function, created inside an expression or inside another syntax construct. Here, the function is created at the right side of the "assignment expression" `=`:
189+
191190
```js
192191
// Function Expression
193192
let sum = function(a, b) {
@@ -243,7 +242,7 @@ Function Expressions are created when the execution reaches them. That would hap
243242

244243
Sometimes that's handy to declare a local function only needed in that block alone. But that feature may also cause problems.
245244

246-
For instance, let's imagine that we need to declare a function `welcome()` depending on the `age` variable that we get in run time. And then we plan to use it some time later.
245+
For instance, let's imagine that we need to declare a function `welcome()` depending on the `age` variable that we get during runtime. And then we plan to use it some time later.
247246

248247
The code below doesn't work:
249248

@@ -298,7 +297,7 @@ if (age < 18) {
298297
}
299298
}
300299

301-
// Here we're out of figure brackets,
300+
// Here we're out of curly braces,
302301
// so we can not see Function Declarations made inside of them.
303302

304303
*!*
@@ -439,15 +438,15 @@ They are very convenient for simple one-line actions, when we're just too lazy t
439438
440439
The examples above took arguments from the left of `=>` and evaluated the right-side expression with them.
441440
442-
Sometimes we need something a little bit more complex, like multiple expressions or statements. It is also possible, but we should enclose them in figure brackets. Then use a normal `return` within them.
441+
Sometimes we need something a little bit more complex, like multiple expressions or statements. It is also possible, but we should enclose them in curly braces. Then use a normal `return` within them.
443442
444443
Like this:
445444
446445
```js run
447-
let sum = (a, b) => { // the figure bracket opens a multiline function
446+
let sum = (a, b) => { // the curly brace opens a multiline function
448447
let result = a + b;
449448
*!*
450-
return result; // if we use figure brackets, use return to get results
449+
return result; // if we use curly braces, use return to get results
451450
*/!*
452451
};
453452
@@ -475,5 +474,5 @@ So we should use a Function Expression only when a Function Declaration is not f
475474

476475
Arrow functions are handy for one-liners. They come in two flavors:
477476

478-
1. Without figure brackets: `(...args) => expression` -- the right side is an expression: the function evaluates it and returns the result.
479-
2. With figure brackets: `(...args) => { body }` -- brackets allow us to write multiple statements inside the function, but we need an explicit `return` to return something.
477+
1. Without curly braces: `(...args) => expression` -- the right side is an expression: the function evaluates it and returns the result.
478+
2. With curly braces: `(...args) => { body }` -- brackets allow us to write multiple statements inside the function, but we need an explicit `return` to return something.

0 commit comments

Comments
 (0)