Billet du blogue

La fonction call() de Javascript

Je n’avais encore jamais utilisé cette fonction jusqu’à aujourd’hui. call() est en fait une méthode d’un objet function. On peut l’utiliser ainsi:

var maFonction = function(message) {
  alert(message);
};

maFonction.call("Bonjour!");

Pensez à call() lorsque vous bâtissez des fonctions qui prennent d’autres fonctions en arguments, par exemple :

function message(texte, callback) {
  if (confirm(texte)) {
    callback.call();
  }
}

message("Voulez-vous continuer?", function() { alert("Je continue"); });

C’était le truc Javascript de la journée!

Posté le avec les tags: .

Commentaires fermés

Les commentaires pour ce billet ont été désactivés un mois après la date de publication de ce-dernier. Vous désirez exprimer votre opinion sur ce billet malgré le fait que les commentaires aient été désactivés ? Utilisez le formulaire de contact.


Fil atom des commentaires de ce billet2 commentaires

  • Ce code fonctionne aussi :

    function message(texte, callback) { if (confirm(texte)) { callback(); } }

    On utilise plutôt call() et apply() quand on veut créer une closure ou lorsqu’on veut binder une fonction à un objet en particulier.

    Samori Gorse (9 décembre 2007 à 11:35 EST)

  • J’avais déjà utilisé cette syntaxe, mais pour une raison que j’ai oublié, je m’étais tourné vers call(). Mais merci de le rappeler! :)

    Rémi Prévost (9 décembre 2007 à 18:38 EST)