You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 1-js/02-first-steps/16-function-expressions/article.md
+13-32Lines changed: 13 additions & 32 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,38 +12,29 @@ function sayHi() {
12
12
13
13
Il existe une autre syntaxe pour créer une fonction appelée *Expression de Fonction*.
14
14
15
-
<<<<<<< HEAD
16
-
Cela ressemble à ceci :
17
-
=======
18
-
It allows us to create a new function in the middle of any expression.
15
+
Cela nous permet de créer une nouvelle fonction au milieu de n'importe quelle expression.
19
16
20
-
For example:
21
-
>>>>>>> 71da17e5960f1c76aad0d04d21f10bc65318d3f6
17
+
Par exemple :
22
18
23
19
```js
24
20
letsayHi=function() {
25
21
alert( "Hello" );
26
22
};
27
23
```
28
24
29
-
<<<<<<< HEAD
30
-
Ici, la fonction est créée et attribuée explicitement à la variable, comme toute autre valeur. Quelle que soit la définition de la fonction, il ne s’agit que d’une valeur stockée dans la variable `sayHi`.
25
+
Ici, nous pouvons voir une variable `sayHi` obtenir une valeur, la nouvelle fonction, créée en tant que `function() { alert("Hello"); }`.
31
26
32
-
=======
33
-
Here we can see a variable `sayHi` getting a value, the new function, created as `function() { alert("Hello"); }`.
27
+
Comme la création de la fonction se produit dans le contexte de l'expression d'affectation (à droite de `=`), il s'agit d'une *Fonction Expression*.
34
28
35
-
As the function creation happens in the context of the assignment expression (to the right side of `=`), this is a *Function Expression*.
29
+
Veuillez noter qu'il n'y a pas de nom après le mot clé `function`. L'omission d'un nom est autorisée pour les fonctions expressions.
36
30
37
-
Please note, there's no name after the `function` keyword. Omitting a name is allowed for Function Expressions.
31
+
Ici, nous l'assignons immédiatement à la variable, donc la signification de ces exemples de code est la même : "créer une fonction et la mettre dans la variable `sayHi`".
38
32
39
-
Here we immediately assign it to the variable, so the meaning of these code samples is the same: "create a function and put it into the variable `sayHi`".
33
+
Dans des situations plus avancées, que nous verrons plus tard, une fonction peut être créée et immédiatement appelée ou planifiée pour une exécution ultérieure, non stockée nulle part, restant ainsi anonyme.
40
34
41
-
In more advanced situations, that we'll come across later, a function may be created and immediately called or scheduled for a later execution, not stored anywhere, thus remaining anonymous.
35
+
## La fonction est une valeur
42
36
43
-
## Function is a value
44
-
45
-
Let's reiterate: no matter how the function is created, a function is a value. Both examples above store a function in the `sayHi` variable.
46
-
>>>>>>> 71da17e5960f1c76aad0d04d21f10bc65318d3f6
37
+
Répétons-le : quelle que soit la manière dont la fonction est créée, une fonction est une valeur. Les deux exemples ci-dessus stockent une fonction dans la variable `sayHi`.
47
38
48
39
La signification de ces exemples de code est la même : "créer une fonction et la placer dans la variable `sayHi`".
49
40
@@ -86,11 +77,7 @@ Voici ce qui se passe ci-dessus en détail :
86
77
2. La ligne `(2)` le copie dans la variable `func`. Veuillez noter à nouveau : il n'y a pas de parenthèses après `sayHi`. S'il y en avait, alors `func = sayHi()` écrirait *le résultat de l'appel*`sayHi()` dans `func`, et non *la fonction*`sayHi` elle-même.
87
78
3. Maintenant, la fonction peut être appelée à la fois en tant que `sayHi()` et `func()`.
88
79
89
-
<<<<<<< HEAD
90
-
Notez que nous aurions aussi pu utiliser une Expression de Fonction pour déclarer `sayHi`, à la première ligne :
91
-
=======
92
-
We could also have used a Function Expression to declare `sayHi`, in the first line:
93
-
>>>>>>> 71da17e5960f1c76aad0d04d21f10bc65318d3f6
80
+
Nous aurions aussi pu utiliser une Fonction Expression pour déclarer `sayHi`, à la première ligne :
94
81
95
82
```js
96
83
letsayHi=function() { // (1) create
@@ -105,7 +92,7 @@ Tout fonctionnerait de la même manière.
105
92
106
93
107
94
````smart header="Pourquoi y a-t-il un point-virgule à la fin ?"
108
-
Il peut y avoir une question, pourquoi l'Expression de Fonction a un point-virgule `;` à la fin, et la Déclaration de Fonction non :
95
+
Il peut y avoir une question, pourquoi la Fonction Expression a un point-virgule `;` à la fin, et la Fonction Déclaration non :
109
96
110
97
111
98
```js
@@ -118,15 +105,9 @@ let sayHi = function() {
118
105
}*!*;*/!*
119
106
```
120
107
121
-
<<<<<<< HEAD
122
-
La réponse est simple :
123
-
- Il n’ya pas besoin de `;` à la fin des blocs de code et des structures de syntaxe qui les utilisent comme `if { ... }`, `for { }`, `function f { }` etc.
124
-
- Une Fonction Expression est utilisée dans la déclaration : `let sayHi = …;`, en tant que valeur. Ce n’est pas un bloc de code, mais plutôt une affectation. Le point-virgule `;` est recommandé à la fin des déclarations, quelle que soit la valeur. Donc, le point-virgule ici n'est en aucun cas lié à la Fonction Expression elle même, il termine simplement l'instruction.
125
-
=======
126
-
The answer is simple: a Function Expression is created here as `function(…) {…}` inside the assignment statement: `let sayHi = …;`. The semicolon `;` is recommended at the end of the statement, it's not a part of the function syntax.
108
+
La réponse est simple : une expression de fonction est créée ici en tant que `function(…) {…}` à l'intérieur de l'instruction d'affectation : `let sayHi = …;`. Le point-virgule `;` est recommandé à la fin de l'instruction, il ne fait pas partie de la syntaxe de la fonction.
127
109
128
-
The semicolon would be there for a simpler assignment, such as `let sayHi = 5;`, and it's also there for a function assignment.
129
-
>>>>>>> 71da17e5960f1c76aad0d04d21f10bc65318d3f6
110
+
Le point-virgule serait là pour une affectation plus simple, telle que `let sayHi = 5;`, et il est également là pour une affectation de fonction.
0 commit comments