From 2a76c37d0e733dedf8ed87d1e7e46caf3c44667e Mon Sep 17 00:00:00 2001 From: SphinxKnight Date: Fri, 30 Jul 2021 20:18:17 +0200 Subject: Prepare JS French section for Markdown (#1574) * Rm IDs w/ [^h\d] id=" * Remove class="hidden" * Remove hidden for code blocks * rm summary classes * Use Note consistently * Remove sup * Rm code in pre * Fixes dd/dt/dl * Fix some more dd * Remove inline style and useless/craft from span/font * h2m report fixing - Consistent use of notes * h2m report fixing - Consistent use of warnings * h2m report fixing - reword one callout * h2m report fixing - array cruft spans hell * Cleaning the rest of docs for md conversion --- .../reference/statements/async_function/index.html | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) (limited to 'files/fr/web/javascript/reference/statements/async_function') diff --git a/files/fr/web/javascript/reference/statements/async_function/index.html b/files/fr/web/javascript/reference/statements/async_function/index.html index 7c9a65bcb9..02131e514b 100644 --- a/files/fr/web/javascript/reference/statements/async_function/index.html +++ b/files/fr/web/javascript/reference/statements/async_function/index.html @@ -20,8 +20,6 @@ original_slug: Web/JavaScript/Reference/Instructions/async_function
{{EmbedInteractiveExample("pages/js/statement-async.html", "taller")}}
- -

Syntaxe

async function name([param[, param[, ... param]]]) {
@@ -34,14 +32,8 @@ original_slug: Web/JavaScript/Reference/Instructions/async_function
 
name
Le nom de la fonction.
-
- -
param
Le nom d'un argument à passer à la fonction.
-
- -
instructions
Les instructions qui composent le corps de la fonction.
@@ -61,7 +53,7 @@ original_slug: Web/JavaScript/Reference/Instructions/async_function
-

Note : Le but des fonctions async/await est de simplifier l'utilisation synchrone des promesses et d'opérer sur des groupes de promesses. De la même façon que les promesses sont semblables à des callbacks structurés, async/await est semblable à la combinaison des générateurs et des promesses.

+

Note : Le but des fonctions async/await est de simplifier l'utilisation synchrone des promesses et d'opérer sur des groupes de promesses. De la même façon que les promesses sont semblables à des callbacks structurés, async/await est semblable à la combinaison des générateurs et des promesses.

Exemples

@@ -154,7 +146,6 @@ setTimeout(parallel, 10000); // réellement parallele : après 1 seconde, setTimeout(parallelPromise, 13000); // identique à parallel
-

await et l'exécution parallèle

Dans sequentialStart, l'exécution est arrêtée pendant deux secondes avant le premier await puis encore une autre seconde avant le deuxième await. Le deuxième minuteur n'est pas créé tant que le premier n'est pas écoulé. Le code s'exécute donc au moins en 3 secondes.

@@ -163,9 +154,7 @@ setTimeout(parallelPromise, 13000); // identique à parallel Toutefois, les appels utilisant  await sont exécutés séquentiellement et la deuxième instruction avec await attendra que la première ait été  traitée. Le minuteur le plus rapide est donc créé juste après le premier.

Si on souhaite avoir deux tâches qui s'exécutent réellement en parallèle, on pourra utiliser  await Promise.all([job1(), job2()]) comme illustré ci-avant avec parallel.

-
-

async/await, Promise.prototype.then() et la gestion des erreurs

La plupart des fonctions asynchrones peuvent être écrites avec des promesses. Toutefois, les fonctions asynchrones qui utilisent async se prêtent mieux à la gestion des erreurs.

@@ -176,7 +165,6 @@ setTimeout(parallelPromise, 13000); // identique à parallel

Bien entendu, il est toutefois possible d'avoir des fonctions asynchrones (avec async) qui gobent des erreurs involontairement. Si on considère la fonction parallel ci-avant, s'il n'y avait eu aucun await ou return pour le résultat de Promise.all([]), aucune erreur n'aurait été propagée.
Bien que l'exemple parallelPromise paraisse simple, il ne gère aucune erreur du tout. Il aurait fallu utiliser un return Promise.all([]) analogue.

-

Réécrire une chaîne de promesses avec une fonction asynchrone

-- cgit v1.2.3-54-g00ecf