Les Callbacks en JavaScript


Les callbacks sont des fonctions passées en tant qu'arguments à d'autres fonctions, qui seront exécutées ultérieurement ou de manière asynchrone. Les callbacks sont largement utilisés en JavaScript, en particulier pour gérer des opérations asynchrones telles que les requêtes AJAX, les animations et les événements.


1. Utilisation des Callbacks :


Les callbacks sont utilisés pour spécifier le comportement à exécuter après l'achèvement d'une opération asynchrone. Ils sont souvent passés en tant qu'arguments à des fonctions qui effectuent ces opérations.


Exemple de Callback :


function traiterDonnees(callback) {
    // Simulation d'une opération asynchrone
    setTimeout(function() {
        let resultat = 'Données traitées avec succès';
        callback(resultat);
    }, 1000);
}

function afficherResultat(message) {
    console.log(message);
}

traiterDonnees(afficherResultat); // Passer la fonction afficherResultat comme callback


2. Callbacks Anonymes :


Vous pouvez également passer des fonctions anonymes comme callbacks. Cela est courant lorsqu'une fonction de rappel est simple et n'a pas besoin d'être réutilisée ailleurs dans le code.


Exemple de Callback Anonyme :


traiterDonnees(function(message) {
    console.log(message);
});


3. Gérer les Erreurs avec les Callbacks :


Les callbacks peuvent également être utilisés pour gérer les erreurs lors d'opérations asynchrones. Traditionnellement, le premier argument passé au callback est réservé pour les erreurs, tandis que les résultats sont passés en arguments suivants.


Exemple de Gestion d'Erreurs avec Callbacks :


function traiterDonnees(callback) {
    // Simulation d'une opération asynchrone
    setTimeout(function() {
        let erreur = null; // Aucune erreur
        let resultat = 'Données traitées avec succès';
        callback(erreur, resultat);
    }, 1000);
}

traiterDonnees(function(erreur, resultat) {
    if (erreur) {
        console.error('Erreur : ' + erreur);
    } else {
        console.log(resultat);
    }
});


4. Callbacks dans les Fonctions de Haut Niveau :


Les callbacks sont souvent utilisés dans les fonctions de haut niveau telles que forEach, map, filter, etc. Ces fonctions acceptent une fonction de rappel en argument pour être appliquée à chaque élément d'un tableau.


Exemple d'Utilisation de Callbacks avec forEach :


let nombres = [1, 2, 3, 4, 5];

nombres.forEach(function(nombre) {
    console.log(nombre * 2);
});


5. Utilisation de Promesses et de Fonctions Asynchrones :


Bien que les callbacks soient couramment utilisés pour gérer les opérations asynchrones, les promesses et les fonctions asynchrones sont maintenant largement utilisées pour des opérations plus complexes, offrant une syntaxe plus claire et évitant les problèmes de l'enfer des callbacks (callback hell).


Exemple de Promesse :


function traiterDonnees() {
    return new Promise(function(resolve, reject) {
        setTimeout(function() {
            let erreur = null; // Aucune erreur
            let resultat = 'Données traitées avec succès';
            resolve(resultat);
        }, 1000);
    });
}

traiterDonnees()
  .then(function(resultat) {
      console.log(resultat);
  })
  .catch(function(erreur) {
      console.error('Erreur : ' + erreur);
  });


En résumé, les callbacks sont une fonction essentielle en JavaScript, particulièrement utile pour gérer des opérations asynchrones. En comprenant comment les utiliser et les passer comme arguments à d'autres fonctions, vous pouvez développer des applications JavaScript plus dynamiques et réactives.

577 vues
Posté le 22 avril 2024
Publicité Sitedudev
Cette pub permet au site de vivre ...
Publicité
Cette pub permet au site de vivre ...
Voir d'autres articles
18 908 vues
Mot de passe oublié en PHP
Il arrivera souvent qu'un utilisateur oublie son mot de passe. Pour y remédiez nous allons modifier notre base de données avec un nouveau paramètre nous permettant de savoir si...
Créer son site
836 vues
Utilisation de async/await
Utilisation de async/await en JavaScriptL'async/await est une syntaxe introduite dans ECMAScript 2017 pour simplifier la gestion des promesses et rendre le code asynchrone plus lisible et plus...
JS
473 vues
Éditer un cours
Les tableaux associatifs en PHP sont des structures de données qui permettent de stocker des paires clé-valeur, où chaque valeur est associée à une clé. Contrairement aux tableaux indexés, les...
PHP
16 298 vues
Visiter un profil PHP
Pour visiter le profil d'un autre utilisateur il nous faudra récupérer son ID passer en argument dans l'URL par la méthode $_GET et afficher ses informations comme pour...
Créer son site
1 121 vues
Tableaux indexés
Les tableaux indexés en PHP sont des structures de données qui permettent de stocker plusieurs valeurs dans une seule variable. Chaque valeur est associée à un indice numérique, à partir de...
PHP
784 vues
Déclarations CSS : comment les combiner pour styliser les éléments
Déclarations CSS : Comment les combiner pour styliser les élémentsLes déclarations CSS sont des instructions individuelles qui spécifient le style des éléments HTML sur une page Web. Elles...
CSS
1 236 vues
Opérateurs de comparaison (==, !=, <, >, <=, >=)
Les opérateurs de comparaison en PHP sont utilisés pour comparer des valeurs et renvoyer un résultat basé sur la comparaison. Voici les principaux opérateurs de comparaison en PHP :1. Égalité...
PHP
5 509 vues
Le langage HTML
Avant de commencer cet article nous allons commencer par un rappel.Rappel : Pour développer en HTML, il faut utiliser n'importe quel éditeur de texte et enregistrer le fichier au format .html afin...
Créer son site
Publicité
Cette pub permet au site de vivre ...