La programmation asynchrone en JavaScript vous permet d'effectuer des tâches telles que passer des appels d'API, lire des fichiers ou interroger des bases de données sans bloquer l'exécution d'autres code. Ceci est crucial en JavaScript, en particulier dans le développement Web, où la réactivité et les performances sont essentielles.
Concepts clés
1. Rappels :
Une fonction passée en argument à une autre fonction, qui est exécutée après la fin d'une opération asynchrone.
Exemple :
function fetchData(callback) { setTimeout(() => { callback("Data fetched"); }, 1000); } fetchData((data) => { console.log(data); });
2. Promesses :
Un objet représentant l'achèvement ou l'échec éventuel d'une opération asynchrone.
Une promesse peut être dans l'un des trois états suivants : en attente, remplie ou rejetée.
Exemple :
let promise = new Promise((resolve, reject) => { setTimeout(() => { resolve("Data fetched"); }, 1000); }); promise .then((data) => console.log(data)) .catch((error) => console.log(error));
3. asynchrone et attendre :
Les fonctions asynchrones renvoient automatiquement une promesse et sont utilisées pour simplifier la gestion des promesses.
wait suspend l'exécution d'une fonction asynchrone jusqu'à ce que la promesse soit résolue, ce qui rend le code plus facile à lire et à écrire.
Exemple :
async function fetchData() { try { let data = await new Promise((resolve, reject) => { setTimeout(() => { resolve("Data fetched"); }, 1000); }); console.log(data); } catch (error) { console.log(error); } } fetchData();
Modèles asynchrones
Callback Hell : Une situation dans laquelle les rappels sont imbriqués dans d'autres rappels, ce qui rend le code difficile à lire et à maintenir.
Promise Chaining : Un modèle pour éviter l'enfer des rappels en renvoyant des promesses et en chaînant les méthodes .then() et .catch().
Async/Await : une approche plus moderne et plus propre de l'écriture de code asynchrone, qui évite le chaînage des promesses et rend le code plus synchrone.
Cas d'utilisation
Appels API : récupération de données à partir d'un serveur.
Minuteurs : utilisation de setTimeout ou setInterval.
Opérations sur les fichiers : lecture ou écriture de fichiers de manière non bloquante.
Gestion des événements : gestion des événements tels que les clics, les pressions sur des touches, etc.
.
.
.
La programmation asynchrone en JavaScript est essentielle pour créer des applications réactives et efficaces, en particulier lorsqu'il s'agit d'opérations liées aux E/S.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!