function-bind-context.js 386 B

123456789101112
  1. var uncurryThis = require('../internals/function-uncurry-this');
  2. var aCallable = require('../internals/a-callable');
  3. var bind = uncurryThis(uncurryThis.bind);
  4. // optional / simple context binding
  5. module.exports = function (fn, that) {
  6. aCallable(fn);
  7. return that === undefined ? fn : bind ? bind(fn, that) : function (/* ...args */) {
  8. return fn.apply(that, arguments);
  9. };
  10. };