Ich habe eine Reihe von Ereignissen, die ich höre (nicht DOM), und ein Objekt, das Ereignishandlerfunktionen enthält.JavaScript voreingestellter Funktionsparameter
Normalerweise würde ich so etwas wie
whenEventOccurs('event-name', handler.eventName)
Außer tun, dass ich einen Parameter an die Prozedur zu übergeben, die für jedes Ereignis Zuhörer ändert.
Ich bin auf der Suche nach etwas wie Function.prototype.bind()
, die this
nicht setzt, aber legt den ersten Parameter, wenn möglich.
Wenn es keine saubere Lösung ist, kann ich folgende immer tun, aber ich möchte es vermeiden, wenn möglich:
whenEventOccurs('event-name', function(foo, bar, baz){
handler.eventName(specialParam, foo, bar, baz);
});
Sie können eine Funktion mit den erforderlichen Bindungen zurückgeben – Rajesh