Obtenir une meilleure compréhension des fonctions de rappel en JavaScript

Je comprends le passage d'une fonction à une autre fonction comme une fonction de rappel et l'avoir à l'exécuter, mais je ne suis pas la compréhension de la meilleure mise en œuvre pour le faire. Je suis à la recherche d'un exemple de base, comme ceci:

var myCallBackExample = {
    myFirstFunction : function( param1, param2, callback ) {
        //Do something with param1 and param2.
        if ( arguments.length == 3 ) {
            //Execute callback function.
            //What is the "best" way to do this?
        }
    },
    mySecondFunction : function() {
        myFirstFunction( false, true, function() {
            //When this anonymous function is called, execute it.
        });
    }
};

Dans myFirstFunction, si je dois retourner nouveau callback(), puis il travaille et exécute la fonction anonyme, mais qui ne semble pas être la bonne approche pour moi.

  • Correct dans ce sens? Généralement, les rappels sont utilisés pour les gestionnaires d'événements, pour la plupart, notamment les appels Ajax, qui sont asynchrones--au fond des choses, où on ne sait pas quand (ou si) un resposne viendra.
  • par la façon dont les arguments sont de tableau mais pas de tableau , de sorte que vous ne pouvez pas faire de l'argument.longueur, mais vous pouvez le convertir dans un tableau à l'aide de la tranche de la méthode...
  • bien que vous avez raison, arguments n'est pas un tableau, vous pouvez toujours référence à sa longueur que arguments.length -- lui donner un essai. Cette propriété renvoie le nombre d'arguments passés, et pas nécessairement le nombre de paramètres dans la signature de la fonction.
InformationsquelleAutor | 2009-01-27