IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

TypeScript Discussion :

Syntax fonction flechées


Sujet :

TypeScript

  1. #1
    Membre régulier
    Inscrit en
    Mars 2007
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 221
    Points : 88
    Points
    88
    Par défaut Syntax fonction flechées
    Bonjour,

    Est ce que quelqu'un pourrai m'expliquer la syntax suivante :


    Je comprends bien celle-ci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    handleDrawerOpen = () => {
    ...
      }
    mais pas celle là

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     handleToggle = value => () => {
    ....
      };
    Merci pour votre aide

  2. #2
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 093
    Points : 6 754
    Points
    6 754
    Par défaut
    Pour y voir plus clair, essayons de réécrire ce bout de code avec une syntaxe un peu plus ancienne.
    Avec le classique mot-clé function de ES5, la fonction handleToggle s’écrit de manière un peu plus verbeuse :
    Code JS : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    handleToggle = function (value) {
      return function () {
        ....
      };
    };

    Quand tu appelles handleToggle, ça te renvoie une fonction qui, à son tour, renvoie une autre fonction.

    Code JS : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    let fonctionA = handleToggle(42);
    let fonctionB = fonctionA();

    J’ai mis 42 comme value parce que je n’ai aucune idée de ce qu’il faut mettre, c’est juste pour l’exemple.

    Cette autre fonction, fonctionB, est celle qui contient en réalité les .... que tu as écrits.

    Ces appels de fonction successifs peuvent s’écrire en une seule instruction :
    Code JS : Sélectionner tout - Visualiser dans une fenêtre à part
    let fonctionB = handleToggle(42)();

    Pour l’anecdote, ce genre de procédé est parfois appelé a un certain rapport avec la curryfication.
    La FAQ JavaScript – Les cours JavaScript
    Touche F12 = la console → l’outil indispensable pour développer en JavaScript !

  3. #3
    Rédacteur/Modérateur

    Avatar de yahiko
    Homme Profil pro
    Développeur
    Inscrit en
    Juillet 2013
    Messages
    1 423
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 1 423
    Points : 8 700
    Points
    8 700
    Billets dans le blog
    43
    Par défaut
    Très bonne réponse.

    Cependant, je ne suis pas vraiment (du tout) d'accord sur l'utilisation du terme curryfication à la fin.
    La curryfication consiste à transformer une fonction ayant plusieurs arguments en une composition de fonctions à un seul argument. Nous ne sommes pas dans ce cas puisque la fonction handleToggle n'a déjà qu'un seul argument.
    Tutoriels et FAQ TypeScript

  4. #4
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 093
    Points : 6 754
    Points
    6 754
    Par défaut
    Citation Envoyé par yahiko Voir le message
    Cependant, je ne suis pas vraiment (du tout) d'accord sur l'utilisation du terme curryfication à la fin.
    Ok, je reconnais que j’ai mal formulé ma phrase. Mais je pensais que ça valait le coup d’en parler
    La FAQ JavaScript – Les cours JavaScript
    Touche F12 = la console → l’outil indispensable pour développer en JavaScript !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VBA] syntaxe fonction domaine multicriteres
    Par christian81 dans le forum VBA Access
    Réponses: 9
    Dernier message: 12/03/2007, 13h06
  2. [RegEx] Syntaxe fonction ereg()
    Par alain31tl dans le forum Langage
    Réponses: 20
    Dernier message: 26/09/2006, 01h44
  3. Verification syntaxe fonction javascript
    Par calitom dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 12/09/2006, 16h02
  4. [PHP-JS] syntaxe fonction verification select
    Par calitom dans le forum Langage
    Réponses: 1
    Dernier message: 12/09/2006, 14h53
  5. [VB6] [Syntaxe] Fonction renvoyant un tableau d'objets
    Par Troopers dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 18/10/2002, 15h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo