ES6 では、次の 2 つの関数はほとんど同じように思えます。
function () {
return this;
}.bind(this);
() => {
return this;
};
this
最終結果は同じように見えます。アロー関数は、コンテキストが作成された場所と同じ値にバインドされた JavaScript 関数オブジェクトを生成しますthis
。
明らかに、一般的な意味で、Function.prototype.bind
はアロー関数よりも柔軟です。 local 以外の値にバインドでき、最初に作成されてから長い時間が経過する可能性がある任意の時点でthis
任意の関数をバインドできます。this
ただし、bind
それ自体がアロー関数とどのように異なるかを尋ねているのではなく、アロー関数が ですぐに呼び出すことbind
とどのように異なるかを尋ねていthis
ます。
ES6 の 2 つの構造に違いはありますか?