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