Závazné argumenty s Bind

Jeden z mých oblíbených a nejzásadnějších Function metoda je bind , funkci, kterou jsme přidali do MooTools, když nebyla uvedena v samotném jazyce JavaScript. Často uvažujeme o použití bind jednoduše svázat volání metody s jejím hostitelským objektem, ale věděli jste, že můžete také svázat argumenty s hostitelským objektem?

Pravděpodobně jste udělali něco takového:

this._onTargetAvailable = this._onTargetAvailable.bind(this);

Tento vzor se často používá, zejména v kódu založeném na třídách nebo při předávání funkcí zpětného volání. Co možná často nevidíte, jsou vázané argumenty:

this._onTargetAvailable = this._onTargetAvailable.bind(
    this,
    arg1,
    arg2,
    arg3
);

Vazba argumentů vám dává větší sílu v tom, jak se používá vaše vázaná funkce! Kdykoli onTargetAvailable zavoláno, argumenty, které zadáte, budou v tomto pořadí a všechny další argumenty budou přidány na konec seznamu argumentů!