ES 6-矢印関数の理解と使用の詳細

708 ワード

矢印関数は、それ自体が役割ドメインを指定しないことに注意してください.
Test() {
  let that = this;
  this.data.name = " ";
  let inner = {
    func: (peram) = >{
      this.name = " "
    },
    func1: function() {
      this.name = "  "
    }
  }
  inner.func();
  inner.func1();
  console.log("~~~~~~~~~~~~~~~~1~~~~~~~~~~~~~~~~~~", this.name)
  //   : ~~~~~~~~~~~~~~~~1~~~~~~~~~~~~~~~~~~  
}

1、なぜ「旭」を出すのか
ES 6の矢印関数のため、作用域を指定しないで、彼の作用域は1級(1級1級の上へ探す)の作用域です;
一方function(){}は、独自の役割ドメインを作成します.
2、付与thatの使用をお勧めしますか?
人によっては、()=>{}が多すぎる場合、賦値thatを使わないと迷うのではないかと心配する場合があります.
3、function関数をすべて矢印関数で置き換えますか?
閉じる必要がある環境では、矢印関数ではなくfunction関数を使用します.
たくさん交流します...