object["set" + $fieldID]($fieldValue);
Certains documents de lecture pour ce qui précède: Member Operators sur MDC. Les méthodes avancées incluent Function.prototype.call
et Function.prototype.apply
. Le premier est en quelque sorte équivalent à call_user_func()
de PHP tandis que ce dernier est en quelque sorte l'équivalent de PHP call_user_func_array()
. La différence entre les fonctions de PHP et JavaScript est que JavaScript vous permet d'appeler des méthodes d'un objet dans le contexte d'un autre objet. Ceci est fait en utilisant le premier argument de call()
et apply()
.
Un équivalent pour l'exemple ci-dessus, mais en utilisant call()
et apply()
ressemble à ceci:
object["set" + $fieldID].call(object, $fieldValue);
object["set" + $fieldID].apply(object, [$fieldValue]);
Le premier argument doit être object
sinon la méthode sera exécutée avec le pointeur this
lié à l'objet global, window
dans le cas des navigateurs.
Vous monsieur, sont un Geezer de diamant. Merci. –