在我看来,在 ES6 中,以下两个函数几乎相同:
function () {
return this;
}.bind(this);
() => {
return this;
};
最终结果似乎相同:箭头函数生成一个 JavaScript 函数对象,其this
上下文绑定到与this
创建它们的位置相同的值。
显然,在一般意义上,Function.prototype.bind
它比箭头函数更灵活:它可以绑定到 local 以外的值this
,并且可以this
在任何时间点绑定任何函数,可能在最初创建之后很长时间。但是,我不是在问它bind
本身与箭头函数有何不同,我是在问箭头函数与立即调用bind
with 的不同之处this
。
ES6 中的两个构造之间有什么区别吗?