###概要###
私は最近フロントエンドを学んだばかりなのですが、React でのイベント監視の書き方についていくつか質問があります。
私が知っている書き方は次のとおりです。
コンストラクターにバインド関数を渡します
-
関数を定義するときは、せん断関数定義を使用します
-
リーリー
タグでせん断関数を使用します
リーリー
###質問###
理解できないのは3番目の書き方です
リーリー
個人的には、アロー関数とバインドは同じことを別の方法で記述するべきだと考えています。しかし、私はデモを書きました
リーリー
getName3、4、5 では、getName5 が返すものは含まれていませんか? ?
おそらく問題は、アロー関数とバインドについての私の誤解にあるのでしょうか?
先輩方のご指導をお待ちしております
5のアロー関数はfunc呼び出し時にthisをバインドしないので、funcのthisはwindowを指しています
リーリーこれに変更するだけです
またはこれ:
リーリー新しく定義された関数には独自の this 値があり、ブラウザーの非厳密モードでは、this はウィンドウを指します。関数がオブジェクト メソッドとして呼び出された場合、その this は呼び出されたオブジェクトを指します。この例では、
リーリーgetName5()
中的函数func
, 并非作为obj
オブジェクト メソッドが呼び出されるため、this は window を指します。アロー関数とは関係ありません。@Xeira は正しいです。アロー関数が定義されると、字句スコープ内のこれは外側の字句スコープにバインドされますが、通常の関数は呼び出す必要があるときに特にバインドされます。これについては、You-Dont-Know-JS で説明を読むことをお勧めします。非常に明確です