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/03-code-quality/05-testing-mocha/article.md
+3-4Lines changed: 3 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -52,8 +52,7 @@ describe("pow", function() {
52
52
Une spécification a trois blocs de construction principaux que vous pouvez voir ci-dessus :
53
53
54
54
`describe("title", function() { ... })`
55
-
: Quelle fonctionnalité nous décrivons. Utilisations pour grouper les "workers" - le bloc `it`. Dans notre cas, nous décrivons la fonction `pow`.
56
-
Quelle fonctionnalité nous décrivons. Dans notre cas, nous décrivons la fonction `pow`. Utilisée pour grouper les "workers" - le bloc `it`.
55
+
: Quelle fonctionnalité nous décrivons. Dans notre cas, nous décrivons la fonction `pow`, utilisée pour grouper les "workers" - le bloc `it`.
57
56
58
57
`it("use case description", function() { ... })`
59
58
: Dans le titre de `it`, nous décrivons d'une *manière lisible par l'homme* le cas particulier d'utilisation, et le deuxième argument est une fonction qui le teste.
@@ -384,11 +383,11 @@ La spécification peut être utilisée de trois manières :
384
383
385
384
1. En tant que **Tests** -- garantir que le code fonctionne correctement.
386
385
2. En tant que **Docs** -- les titres de `describe` et `it` indiquent ce que fait la fonction.
387
-
3. En tant que **Examples** -- les tests sont en fait d'exemples de travail montrant comment une fonction peut être utilisée.
386
+
3. En tant que **Examples** -- les tests sont en fait des exemples de travail montrant comment une fonction peut être utilisée.
388
387
389
388
Avec la spécification, nous pouvons sans risque améliorer, modifier, même réécrire la fonction à partir de zéro et nous assurer qu'elle fonctionne toujours correctement.
390
389
391
-
C’est particulièrement important dans les grands projets quand une fonction est utilisée dans de nombreux endroits. Lorsque nous changeons une telle fonction, il n’ya aucun moyen de vérifier manuellement si chaque endroit qui l’utilise fonctionne toujours correctement.
390
+
C’est particulièrement important dans les grands projets quand une fonction est utilisée dans de nombreux endroits. Lorsque nous changeons une telle fonction, il n’y a aucun moyen de vérifier manuellement si chaque endroit qui l’utilise fonctionne toujours correctement.
Copy file name to clipboardExpand all lines: 1-js/04-object-basics/02-object-copy/article.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
3
3
Une des différences fondamentale des objets avec les primitives est que ceux-ci sont stockés et copiés "par référence", en opposition des valeurs primitives : strings, numbers, booleans, etc. -- qui sont toujours copiés comme "valeur entière".
4
4
5
-
On comprendra plus facilement en regardant "sous le capot" de ce qui se passe lorsque nous copions une valeure.
5
+
On comprendra plus facilement en regardant "sous le capot" ce qui se passe lorsque nous copions une valeure.
6
6
7
7
Commençons avec une primitive, comme une chaîne de caractères.
8
8
@@ -121,13 +121,13 @@ let user = {
121
121
*!*
122
122
let clone = {}; // le nouvel object vide
123
123
124
-
// on copie toutes les propritété de user
124
+
// on copie toutes les propritétés de user
125
125
for (let key in user) {
126
126
clone[key] = user[key];
127
127
}
128
128
*/!*
129
129
130
-
// maintenant clone est un objet complétemnet indépendant avec le même contenu
130
+
// maintenant clone est un objet complétemnet indépendant avec le même contenu
131
131
clone.name="Pete"; // On change les données de celui-ci
132
132
133
133
alert( user.name ); // c'est toujour john dans l'objet copié
@@ -192,7 +192,7 @@ Il existe également d'autres méthodes de clonage d'un objet, par ex. en utilis
192
192
193
193
## Clonage imbriqué
194
194
195
-
Jusqu'à maintenant on suppose que toutes les propriétés de `use` sont des primitives. Mais les propriétés peuvent être des références vers d'autres objets. Comment gèrer ces cas-là ?
195
+
Jusqu'à maintenant on suppose que toutes les propriétés de `user` sont des primitives. Mais les propriétés peuvent être des références vers d'autres objets. Comment gèrer ces cas-là ?
Copy file name to clipboardExpand all lines: 1-js/04-object-basics/04-object-methods/article.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -222,7 +222,7 @@ Dans ce cas, `this` est `undefined` en mode strict. Si nous essayons d'accéder
222
222
223
223
En mode non strict (si on oublie `use strict`), la valeur de `this` dans ce cas sera l’*objet global* (la fenêtre d’un navigateur, nous y reviendrons plus tard). Ceci est un comportement historique qui corrige `"use strict"`.
224
224
225
-
Cen genre d'appel est généralement une erreur de programmation. Si il y a un `this` dans une fonction, il s'attend à être appelée dans un contexte d'objet.
225
+
Ce genre d'appel est généralement une erreur de programmation. Si il y a un `this` dans une fonction, il s'attend à être appelée dans un contexte d'objet.
226
226
````
227
227
228
228
```smart header="Les conséquences d'un `this` non lié"
Copy file name to clipboardExpand all lines: 1-js/04-object-basics/07-optional-chaining/article.md
+3-2Lines changed: 3 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -221,7 +221,8 @@ delete user?.name; // supprime user.name si user existe
221
221
Le chaînage optionnel `?.` n'a aucune utilité sur le côté gauche d'une affectation :
222
222
223
223
224
-
For example:
224
+
Par exemple :
225
+
225
226
```js run
226
227
227
228
let user = null;
@@ -240,7 +241,7 @@ Le chaînage optionnel '?.' A trois formes :
240
241
3.`obj?.method()`-- appel `obj.method()` si `obj.method` existe, sinon retourne `undefined`.
241
242
242
243
243
-
Comme nous pouvons le voir, tous sont simples et simples à utiliser. Le`?.` vérifie la partie gauche pour `nul/undefined` et permet à l'évaluation de se poursuivre si ce n'est pas le cas.
244
+
Comme nous pouvons le voir, tous sont simples et simples à utiliser. Le`?.` vérifie la partie gauche pour `null/undefined` et permet à l'évaluation de se poursuivre si ce n'est pas le cas.
244
245
245
246
Une chaîne de `?.` permet d'accéder en toute sécurité aux propriétés imbriquées.
Copy file name to clipboardExpand all lines: 1-js/05-data-types/01-primitives-methods/article.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -122,7 +122,7 @@ alert(null.test); // error
122
122
```
123
123
````
124
124
125
-
## Sommaire
125
+
## Résumé
126
126
127
127
- Les primitives sauf null et undefined fournissent de nombreuses méthodes utiles. Nous étudierons cela dans les prochains chapitres.
128
128
- Officiellement, ces méthodes fonctionnent via des objets temporaires, mais les moteurs JavaScript sont bien ajustés pour optimiser cela en interne, elles ne sont donc pas coûteuses à appeler.
2. La méthode [toFixed(n)](https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Number/toFixed) arrondit le nombre à `n` chiffres après le point et renvoie unechaîne de caractères du résultat.
167
+
2. La méthode [toFixed(n)](https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Number/toFixed) arrondit le nombre à `n` chiffres après le point et renvoie une chaîne de caractères du résultat.
168
168
169
169
```js run
170
170
let num = 12.34;
171
171
alert( num.toFixed(1) ); // "12.3"
172
172
```
173
173
174
-
Ceci arrondit à la valeur la plus proche, similaire à `Math.round`:
174
+
Ceci arrondit à la valeur la plus proche, similaire à `Math.round`:
175
175
176
176
```js run
177
177
let num = 12.36;
178
178
alert( num.toFixed(1) ); // "12.4"
179
179
```
180
180
181
-
Veuillez noter que le résultat de `toFixed` est une chaîne de caractères. Si la partie décimale est plus courte qu'indiquée, des zéros sont ajoutés à la fin:
181
+
Veuillez noter que le résultat de `toFixed` est une chaîne de caractères. Si la partie décimale est plus courte qu'indiquée, des zéros sont ajoutés à la fin:
182
182
183
183
```js run
184
184
let num = 12.34;
185
185
alert( num.toFixed(5) ); // "12.34000", ajout de zéros pour faire exactement 5 chiffres
186
186
```
187
187
188
-
Nous pouvons le convertir en un nombre en utilisant le plus unaire `+` ou un appel `Number()`:`+num.toFixed(5)`.
188
+
Nous pouvons le convertir en un nombre en utilisant le plus unaire `+` ou un appel `Number()`:`+num.toFixed(5)`.
Si on vérifie si la somme de `0.1` et `0.2` est égale à `0.3` on obtient `faux`.
209
209
210
-
Étrange! Qu'est-ce que c'est alors si ce n'est pas `0.3`?
210
+
Étrange! Qu'est-ce que c'est alors si ce n'est pas `0.3`?
211
211
212
212
```js run
213
213
alert( 0.1 + 0.2 ); // 0.30000000000000004
214
214
```
215
215
216
-
Aie! Imaginez que vous créiez un site d'e-commerce et que le visiteur mette des produits à `0,10 €` et `0,20 €` dans son panier. Le total de la commande sera de `0,30000000000000004 €`. Cela surprendrait n'importe qui.
216
+
Aie! Imaginez que vous créiez un site d'e-commerce et que le visiteur mette des produits à `0,10 €` et `0,20 €` dans son panier. Le total de la commande sera de `0,30000000000000004 €`. Cela surprendrait n'importe qui.
0 commit comments