1.0.0 • Published 8 years ago

@dlmanning/bind v1.0.0

Weekly downloads
2
License
ISC
Repository
github
Last release
8 years ago

Functions

BoundFunction : function

Kind: global interface
Properties

NameType
partialfunction

boundFunction.partial ⇒ BoundFunction

Perform a partial application of the provided parameters. The returned function is memoized for a given set of parameters, so that repeated applications will always return the same function object.

Kind: instance property of BoundFunction
Returns: BoundFunction - another BoundFunction with the provided params applied

ParamTypeDescription
...params*zero or more items to partially apply

Example

const applied = boundMethod.partial('Hello', 'World')
// applied is a BoundFunction which will always be called with "Hello" and
// "World" as its first two params

bind(self, fn) ⇒ BoundFunction

bind a function to the provided context

Kind: global function
Returns: BoundFunction - a bound function

ParamTypeDescription
selfObjectcontext to which the function will be bound
fnfunctionfunction to be bound

Example

var boundMethod = bind(this, this.aMethod)
boundMethod() // boundMethod is bound to this

bind.all(self, methods) ⇒ Object.<string, BoundFunction>

bind a collection of functions to the provided context.

Kind: static method of bind

ParamTypeDescription
selfObjectcontext to which the function will be bound
methodsArray.<string> | Object.<string, function()>If an array is given, it must be an array of strings whose names are methods on the provided context object. If an object is provided, the returned object will key the bound functions according to those provided.

Example

// assumes hear, see and speak are methods on this
bind.all(this, ['hear', 'see', 'speak'])
// or you can pass an object with function values, which will be bound to this
bind.all(this, { hear: function1, see: function2, speak: function3 })