Get unlimited public & private packages + package-based permissions with npm Pro.Get started »

weak-bind

0.0.1 • Public • Published

weak-bind

Once a function is bound, there's no way of un-binding it - i.e. to run it under a different context. So, this module is an equivalent to Function.prototype.bind, which still allows for the function context to be overridden with bind, call and apply.

Installation

$ npm install weak-bind

Usage

bind(fn, context, [args...]) is equivalent to fn.bind(context, [args...]), but reversible.

var bind = require('weak-bind')
  , first = { x: 'first' }
  , second = { x: 'second' }
 
function getX() {
  return this.x;
};
 
getX(); // NaN
 
bind(getX, first)() // "first"
getX.bind(first)()  // "first"
 
bind(getX, first).bind(second)() // "second"
getX.bind(first).bind(second)()  // "first"

Keywords

none

Install

npm i weak-bind

DownloadsWeekly Downloads

1

Version

0.0.1

License

none

Last publish

Collaborators

  • avatar