Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
vending-mp-tcneg-dep / usr / local / lib / vending / mp / tcneg / node_modules / component-bind
  ..
  index.js
  Readme.md
  Makefile
  package.json
  .npmignore
  component.json
  History.md
Size: Mime:

bind

Function binding utility.

Installation

$ component install component/bind

API

bind(obj, fn)

should bind the function to the given object.

var tobi = { name: 'tobi' };

function name() {
  return this.name;
}

var fn = bind(tobi, name);
fn().should.equal('tobi');

bind(obj, fn, ...)

should curry the remaining arguments.

function add(a, b) {
  return a + b;
}

bind(null, add)(1, 2).should.equal(3);
bind(null, add, 1)(2).should.equal(3);
bind(null, add, 1, 2)().should.equal(3);

bind(obj, name)

should bind the method of the given name.

var tobi = { name: 'tobi' };

tobi.getName = function() {
  return this.name;
};

var fn = bind(tobi, 'getName');
fn().should.equal('tobi');

License

MIT