Ihre Frage ist unklar. Wenn Sie fragen, wie Sie dies auf einfachere Weise tun können, sollten Sie einen Blick auf die ECMAScript 5th Edition Methode werfen .bind() die Mitglied ist von Funktion.prototyp . Damit können Sie etwa so vorgehen:
function tryMe (param1, param2) {
alert (param1 + " and " + param2);
}
function callbackTester (callback) {
callback();
}
callbackTester(tryMe.bind(null, "hello", "goodbye"));
Sie können auch den folgenden Code verwenden, der die Methode hinzufügt, wenn sie im aktuellen Browser nicht verfügbar ist:
// From Prototype.js
if (!Function.prototype.bind) { // check if native implementation available
Function.prototype.bind = function(){
var fn = this, args = Array.prototype.slice.call(arguments),
object = args.shift();
return function(){
return fn.apply(object,
args.concat(Array.prototype.slice.call(arguments)));
};
};
}
Beispiel
bind() - PrototypeJS-Dokumentation