https://github.com/component/bind
Function binding utility
https://github.com/component/bind
Last synced: 11 months ago
JSON representation
Function binding utility
- Host: GitHub
- URL: https://github.com/component/bind
- Owner: component
- License: mit
- Created: 2012-08-13T16:12:43.000Z (over 13 years ago)
- Default Branch: master
- Last Pushed: 2022-04-15T15:56:10.000Z (almost 4 years ago)
- Last Synced: 2025-04-17T18:59:39.780Z (12 months ago)
- Language: JavaScript
- Size: 177 KB
- Stars: 20
- Watchers: 3
- Forks: 12
- Open Issues: 2
-
Metadata Files:
- Readme: Readme.md
- Changelog: History.md
- License: LICENSE
Awesome Lists containing this project
README
# bind
Function binding utility.
## Installation
```
$ component install component/bind
```
## API
- [bind(obj, fn)](#bindobj-fn)
- [bind(obj, fn, ...)](#bindobj-fn-)
- [bind(obj, name)](#bindobj-name)
### bind(obj, fn)
should bind the function to the given object.
```js
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.
```js
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.
```js
var tobi = { name: 'tobi' };
tobi.getName = function() {
return this.name;
};
var fn = bind(tobi, 'getName');
fn().should.equal('tobi');
```
## License
MIT