検索

ホームページ  >  に質問  >  本文

javascript - addEventListener とattachEventの互換性のある記述メソッドに関する質問、助けてください。

最初の書き方

リーリー リーリー

2番目の書き方

リーリー リーリー

とても分かりやすかったです、ありがとう!

サムハンクス

PHPzPHPz2753日前729

全員に返信(3)返信します

  • 给我你的怀抱

    给我你的怀抱2017-05-16 13:41:30

    最初の書き方の IIFE に注意してください。これにより、コードが実行されて addEvent 関数が割り当てられたときに、addEvent が if によって返される関数であるか、else if によって返される関数であるかが明確になります。

    2 番目の記述方法では、コードを実行するときは addEvent が依然として最も外側の関数です。実際に addEvent() を呼び出すときは、addEvent が何であるかを明確にするために内部で値を再割り当てし、関数内でそれ自体を呼び出します。嘘をつきます。

    中間パラメータの受け渡し処理があり、それが呼び出されていない場合、最初の書き込みメソッドの即時実行関数が実行された後、常に外部関数への参照が保存されることに注意してください。匿名関数は、リサイクルの待機を開始します。

    返事
    0
  • 黄舟

    黄舟2017-05-16 13:41:30

    2 番目のメソッドは遅延読み込み関数と呼ばれ、最初のメソッドに相対的なものであることを理解しています:
    1) 最初のメソッド。これは IIFE であるため、addEvent が呼び出されているかどうかに関係ありません。ブラウザが addEventListener または attachEvent をサポートしていることが確認されています addEvent, 都已经确认了浏览器支持的是addEventListener ,还是attachEvent
    2) 第二种方法,则是在显式调用addEvent 2) 2 番目の方法は、addEvent を明示的に呼び出す場合です。ブラウザのサポート状況を確認します。 。

    返事
    0
  • 漂亮男人

    漂亮男人2017-05-16 13:41:30

    2つ目のメソッドは初回呼び出し後にaddEventを再割り当てしており、2回目の呼び出し時に分岐判定を行う必要がありません

    返事
    0
  • キャンセル返事