12
votes

Comment définir une variable JavaScript au retour d'une fonction en ligne?

J'utilise le code: xxx

essayant de définir x sur true, la valeur de retour de la fonction, mais x est définie comme la fonction elle-même. Comment puis-je définir x comme valeur de retour de la fonction? Je pourrais facilement coder autour de ce problème en utilisant une fonction non intégrée ou d'une autre, mais elle me bugs parce que je suis sûr qu'il doit y avoir une solution simple.

Merci.


0 commentaires

3 Réponses :


32
votes

La solution consiste à définir la fonction puis d'invoquer (en ajoutant les parenthèses supplémentaires à la fin):

    var x = ( function() {return true;} ) ();


0 commentaires

9
votes

Vous n'exécutez pas la fonction, vous définissez x pour être la fonction réellement.

Si vous aviez une variable y , il pourrait continuer La valeur de la fonction avec quelque chose comme: xxx

ou alternativement exécuter la fonction en place avec: xxx


0 commentaires

2
votes

Votre code définit simplement la fonction et l'attribue à X code>, la fonction ne s'appelle pas. Pour l'appeler, placez la fonction entre parenthèses et ajouter () code> après cela, comme pour une fonction normale appel:

    var x = 
        (
            function () { 
                return true;
            } 
        )();


0 commentaires