Javascript arrow function


Javascriptではarrow関数が配列を処理する際、コールバック関数やreactでバインドの目的を提供しない場合、匿名関数として簡単に使用したい場合など、多くの場所で使用されています.
既存のfunctionキーワードではなく矢印を使用して定義を簡略化する利点があります.またfunctionキーワードとは異なり、コールバック関数でthisがグローバルオブジェクトを指す問題を解決するのに役立ちます.
const multiply = (x, y) => x * y;
const arrow = x => {...};
const arrow = () => {...}
const create = (id, content) => ({id, content});
上の図に示すように、パラメータの個数に応じて多様なものが用いられる.
追加の説明は以下の通りです.
矢印関数は、インスタンスを生成できないnon-constructorです.
const Foo = () => {};
new Foo(); // error
インスタンスを作成できないため、インスタンスを作成するときに追従するプロトタイプも存在しません.
Prototypeがインタフェースを作成するときに接続されるのは不思議ではありません.
矢印関数自体のthis、arguments、super、newの場合.targetバインドがないため、矢印関数がこれらの値を参照すると、スキャンチェーンを介して参照されます.
this
この部分は矢印関数のコア部分です.
Reactを開発した場合、
constructor() {
  this.a = this.a.bind(this);
}

a() {
  ...
}
以上の関数はclass componentで多く見たことがあるはずです.
JavaScriptでは、呼び出し方法によって異なります.代表的には、apply、call、bindなどの関数またはオブジェクト内のメソッドを呼び出すときに見ることができます.通常の関数として呼び出されるすべての関数の内部がこれを指しているため、Arrayプロトタイプのコールバックは常にグローバルオブジェクトを指します.この場合、多くのエラーが発生します.以前Reactをやった人なら、何度か経験したことがあるかもしれません.
この場合、矢印関数を使用すると、親ミラーのthisを直接参照するため、簡単に解決できます.
ここでは位相スキャンについて質問することができ,語彙scopeと同じ線上で考えると分かりやすい.