有人可以解释这个功能呢?
var bindbind = Function.prototype.bind.bind(Function.prototype.bind);
我的理解产生的结果:
var bindedContextFunc = bindbind(function)(context);
bindedContextFunc(args);
但不明白创建此功能的过程中,我的意思是部分bind(Function.prototype.bind)
有人可以解释这个功能呢?
var bindbind = Function.prototype.bind.bind(Function.prototype.bind);
我的理解产生的结果:
var bindedContextFunc = bindbind(function)(context);
bindedContextFunc(args);
但不明白创建此功能的过程中,我的意思是部分bind(Function.prototype.bind)
好。 我们有三次Function.prototype.bind
功能在这里,他们(简化)代码
function bind(context) {
var fn = this;
return function() {
return fn.apply(context, arguments);
}
}
我将在缩写有很多部分应用程序的多个功能样式:绑定FN(上下文) - > FN 上下文 。
那么它有什么作用? 你已经得到bind.call(bind, bind)
或绑定绑定 (绑定)。 让我们扩展这个绑定绑定 。 如果我们现在提供的一些参数呢?
绑定的绑定 (绑定)(FN)(上下文)
绑定的绑定 (FN)(上下文)
绑定FN(上下文)
FN 上下文
我们到了。 我们可以将这个给一些变量来使结果更加清晰:
bindbind =绑定的绑定 (绑定)
bindfn = bindbind 任何东西 (FN)
//
绑定FNcontextbindfn = bindfn 任何东西 (上下文)
//
FN 上下文结果= contextbindfn 任何东西 (参数)
//
FN 上下文 (参数)