Javascript function-pointer mit dem argument als parameter in einer Funktion

Nicht sicher, ob der Titel richtig formuliert, oder ob es einen besseren Weg, es zu sagen, aber ich denke, das ist okay.

Jedenfalls verstehe ich die folgende so weit:

a.b("a", "b", "c", foo);

Wo "foo" ist eine Funktion, die definiert an anderer Stelle, dass keine Argumente würde einfach das Ergebnis in die Funktion ein.b() ausgeführt, mit den oben genannten Parametern. Der parameter "foo" kann dann aufgerufen werden, innerhalb der Funktion ein.b() einfach als "foo()". In anderen Worten, ich verstehe den obigen Aufruf über einen Funktionszeiger als argument in die Funktion ein.b als parameter.

Okay, jetzt ist hier, was ich versuche zu tun...

Ich möchte in der Lage sein, etwas zu tun, ähnlich wie oben, außer dieser Zeit, die ich möchte, dass foo ein Parameter übergeben, das argument wie folgt:

a.b("a", "b", "c", foo("bar"));

Hier ist nun das problem. Diese wird wörtlich Ergebnis in den Parameter "a", "b", "c" und die Ergebnis von foo("bar") verwendet wird. Das will ich nicht. Ich möchte foo("bar") buchstäblich übergeben werden, so dass in der Funktion ein.b, die so Aussehen (wie den header):

a.b(first, second, third, fourth);

Konnten Referenz und rufen Sie den vierten parameter ein, wie:

fourth();

Selbst wenn die "vierte" hat ein argument. Ich kann nicht scheinen zu finden ein Weg, um dieses problem einen Rat?

Dank!

InformationsquelleAutor der Frage Jordan Johns | 2012-11-30

Schreibe einen Kommentar