javascript - 遅延実行関数 setTimeout の前の var xxx=null の役割は何ですか?
伊谢尔伦
伊谢尔伦 2017-05-19 10:38:43
0
3
588

初めての投稿で申し訳ありません。
マウスを 2 秒間 p 上に置いた後、エフェクトを作成していくつかの機能を実行したいのですが、2 秒を超えると実行されません;
そこで、ネットで setTimeout 関数を見つけ、無事解決しました。ずっと独学なので基礎が弱いです。分からないところがあるので教えてください

コードには合計 3 つの質問がコメントされています。ありがとうございます。
コード:

リーリー
伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全員に返信(3)
世界只因有你
  1. setTimeout は整数の ID を返します。これは、数値を格納するために事前に変数を宣言するために使用されます。

  2. なぜここで言えないのですか?この変数がどこで見つかるのか知りたいですか?
  3. var是函数作用域的,在function里边声明的变量一出去就没了,你叫另一个匿名函数的clearTimeout

    ここでの if は主に厳密です。
  4. がタイマー番号を正常に返した場合にのみ (初期値が null であるため、返されない場合は間違いなく false になります)、 は返されます。 clearTimeout(timer )この文は、前の実行エラーが発生したときにエラー コードが実行を継続するのを防ぎます。
  5. if主要是严谨,在setTimeout成功返回计时器编号(因为初始是null,如果没返回肯定就false了)的情况下,才会执行clearTimeout(timer)

いいねを押す +0
左手右手慢动作

まず、setTimeout タイマーは使用後にクリアされます。どのタイマーをクリアするかを知るために、タイマー変更という変数が追加されます。
2 番目に、関数スコープ。内部変数には関数の外部から直接アクセスできないため、別の関数で使用するには変数を関数の外部で定義する必要があります。
最後の if(タイマー) は主に、タイマーが閉じられたときにクリア エラーがトリガーされるのを避けるためです。

いいねを押す +0
某草草

上記お二方、ありがとうございました!

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート