List of utility methods to do Function Bind
bindbind(self)Function.prototype.bind = function bind(self) { var callable = this; return function binding() { return callable.apply(self, arguments.toArray()); }; | |
bind(oThis)Function.prototype.bind = Function.prototype.bind || function (oThis) { if( typeof this !== "function" ) { throw new TypeError("Function.prototype.bind - what is trying to be bound is not callable"); var aArgs = Array.prototype.slice.call(arguments, 1), fToBind = this, fNOP = function () {}, fBound = function () { return fToBind.apply( ... | |
bind(scope)Function.prototype.bind = function(scope) { var func = this; return function() { return func.apply(scope, arguments); }; }; | |
bind( obj )Function.prototype.bind = function( obj ) { var slice = [].slice, args = slice.call(arguments, 1), self = this, nop = function () {}, bound = function () { return self.apply( this instanceof nop ? this : ( obj || {} ), args.concat( slice.call(arguments) ) ); }; ... | |
bind(bind)Function.prototype.bind = function (bind) { var self = this; return function () { var args = Array.prototype.slice.call(arguments); return self.apply(bind || null, args); }; }; | |
rebind(n)Function.prototype.rebind = function (n) { var me = this; return function () { var res = me.apply(); var f = res && res[n]; if(typeof f !== 'function') throw 'routed property was not a function.'; f.apply(null, arguments); }; }; ... | |
bind(scope)Function.prototype.bind = function(scope) { var _function = this; return function() { return _function.apply(scope, arguments); }; | |
pass(args, bind)Function.prototype.pass = function(args, bind){ var self = this; if (args != null) args = Array.from(args); return function(){ return self.apply(bind, args || arguments); }; }; Element.prototype.hasClass = function(className){ return this.className.indexOf(className) != -1; ... | |
createDelegate(obj, args, appendArgs)Function.prototype.createDelegate = function(obj, args, appendArgs){ var method = this; return function() { var callArgs = args || arguments; if(appendArgs === true){ callArgs = Array.prototype.slice.call(arguments, 0); callArgs = callArgs.concat(args); }else if(typeof appendArgs == 'number'){ callArgs = Array.prototype.slice.call(arguments, 0); ... | |
Map(compareFunction)function Map(compareFunction) { this.keyArray = []; this.valArray = []; this.compareFunction = compareFunction; Map.prototype.put = function(key, val) { var elementIndex = this.findKey(key); if (elementIndex === (-1)) { this.keyArray.push(key); ... |