17 lines
382 B
JavaScript
17 lines
382 B
JavaScript
|
module.exports = bindActor
|
||
|
function bindActor () {
|
||
|
var args =
|
||
|
Array.prototype.slice.call
|
||
|
(arguments) // jswtf.
|
||
|
, obj = null
|
||
|
, fn
|
||
|
if (typeof args[0] === "object") {
|
||
|
obj = args.shift()
|
||
|
fn = args.shift()
|
||
|
if (typeof fn === "string")
|
||
|
fn = obj[ fn ]
|
||
|
} else fn = args.shift()
|
||
|
return function (cb) {
|
||
|
fn.apply(obj, args.concat(cb)) }
|
||
|
}
|