Si j'ai javascript OO qui ressemble à ceci:fonctions en tant que paramètres (avec paramètres) - JavaScript
function someFunction(a, b, c) {
// do something with a, b, and c
}
function theLoader() {
loadFunction: someFunction,
load: function() {
// invoke the loadFunction with the proper parameter set
}
}
var myLoader = new theLoader();
myLoader.load();
Supposons que « theLoader » devrait être abstraite et générique. Je pourrais l'appeler et mettre le 'loadFunction' à presque n'importe quoi, donc je ne sais pas quels seront les arguments à un moment donné. La méthode 'load' doit appeler le 'loadFunction' et en quelque sorte être en mesure d'obtenir un argument.
Comment puis-je accomplir ce que j'essaie de faire? Si c'est une mauvaise façon de procéder, nous pouvons entièrement refactoriser le code. Je voudrais garder les restrictions de 'loadFunction' afin que je n'aie pas à coder les fonctions du chargeur d'une manière spéciale. À la fin de la journée, je voudrais emballer theLoader dans son propre fichier .js et ne pas avoir à singe avec lui. Donc, si vous connaissez la réponse, aidez un frère à sortir!
Merci, g
C'est un bon conseil. J'ai essayé de le garder quelque peu abstrait par souci de simplicité, mais cela ressemblerait plus à ceci (commentaire suivant) –
function customerDataLoader (customerID) {stuff} function clientInvoiceLoader (customerID, orderNumber) {substance} custLoader = new theLoader ({loadFunction: customerDataLoader}); invoiceLoader = nouveau theLoader ({loadFunction: invoiceDataLoader}); Les valeurs de paramètre ne sont pas statiques. –