Bonjour à tous,

Je souhaite appeler une méthode en lui passant deux paramètres, le premier un objet, le second une méthode à appeler sur cet objet.
Je n'arrive pas à lancer l'appel à la méthode.

Voici ma classe
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
function MyClasse(pName) {
  this._name = pName;
}
MyClasse.prototype = {
  eventA: function() {
    //do sthg
    this._name = 'eventA ' + this._name;
  },
 
  eventB: function() {
    //do sthg else
  }
}
Voici ma fonction :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
function test(pObject, pFn) {
  // do sthg
   pObject.pFn();   
}
Et ce que je souhaite faire :
j'ai un objet instancié de ma classe, et je souhaite appeler :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
test(monObjet, 'eventA');
Or ce code ne fonctionne pas, firebug m'indique que pFn is not a function.

Comment faire pour appeler dynamiquement la méthode souhaité sur mon objet donné ?

ps : le passage de l'objet fonctionne bien car le code pObjet.eventA(); fonctionne très bien.

Merci par avance pour vos idées,

Thec