J'ai une fonction javascript (classe) qui prend une référence de fonction en tant que paramètre.Extend Javascript Fonction passée en paramètre
function MyClass (callBack) {
if (typeof callBack !== 'function')
throw "You didn't pass me a function!"
}
Pour des raisons que je ne vais pas aller ici, je dois ajouter quelque chose à la fonction en l'enfermant dans une fonction anonyme, mais la seule façon que je suis en mesure de comprendre comment le faire est en ajoutant une fonction publique à MyClass qui prend la fonction callBack en paramètre et renvoie la version modifiée. Est-il possible de faire cela fonctionner lors du passage de la fonction callBack en tant que paramètre à la classe? Tenter de modifier la fonction de cette manière quand on la passe en paramètre ne semble affecter que son instance dans la classe, mais cela ne semble pas être une hypothèse valide puisque les fonctions sont des objets en javascript, et sont donc passées par référence.
Mise à jour: comme souligné crescentfresh (et j'ai échoué à expliquer bien), je veux modifier la fonction callBack sur place. Je préfère ne pas appeler une seconde fonction s'il est possible de faire tout cela lorsque la classe est instanciée.
Merci pour l'explication détaillée. Je ne comprenais pas exactement comment les objets de fonction ont été passés. – dmercer