sbind (aka speedy-bind)
A tiny but powerful JavaScript module, to play with Function.bind()
, under the MIT license.
It provides some simple context-free and fast functions to bind on each function or methods.
You can use it like a Function.call()
or play with arrays or arguments objects like a Function.apply()
.
Install :
npm install sbind
Reference :
sbind.unbind(method) :
var unbind, substring, substringFromHello; unbind = require('sbind').unbind;// we create a context-free function to extract substringssubstring = unbind(String.prototype.substring); console.log(substring('substring')(0, 6)); // 'substr'
sbind.call(method) :
var call, substring, substringFromHello; call = require('sbind').call;// we create a context-free function to extract substringssubstring = call(String.prototype.substring); console.log(substring('Hello world!', 0, 5)); // 'Hello'console.log(substring('Hello world!', 6, 11)); // 'world'
sbind.bind(method) :
var bind, substring, substringFromHello; bind = require('sbind').bind;// we create a context-free function to extract substringssubstring = bind(String.prototype.substring);// we bind the string 'Hellow world!' to extract substringssubstringFromHello = substring('Hello world!'); console.log(substringFromHello(0, 5)); // 'Hello'console.log(substringFromHello(6, 11)); // 'world'
sbind.apply(method) :
var apply, substring, substringFromHello; apply = require('sbind').apply;// we create a context-free function to extract substringssubstring = apply(String.prototype.substring); console.log(substring('Hello world!', [0, 5])); // 'Hello'console.log(substring('Hello world!', [6, 11])); // 'world'
sbind.all(method) :
var all, substring, substringFromHello; all = require('sbind').all;// we create a context-free function to extract substringssubstring = all(String.prototype.substring);// we bind the string 'Hellow world!' to extract substringssubstringFromHello = substring('Hello world!'); console.log(substringFromHello([0, 5])); // 'Hello'console.log(substringFromHello([6, 11])); // 'world'
Requirements :
- ES5 support
Function.bind()