1

JavaScriptでsetIntervalとが動作する方法を理解するのに問題があります。clearInterval

これら 2 つの機能に関するさまざまな記事を読みましたが、まだ混乱しています。

single thread呼び出し時にJavaScript が使用されるという事実を考慮してtest=setInterval(function(){}, t)、関数がミリ秒ごとに実行されるようにスケジュールしtます。私たちでない限りclearInterval(test)

  • どういう意味ですか?ということは、すでに JavaScript のキューに入っているということclearIntervalでしょうか。canclesetInterval
  • setInterval1回だけで何回かしたらどうなるでしょうかclearInterval
  • clearInterval入れますsetIntervalか?
  • JavaScript はスケジュールされたプロセスをどのように処理しますか?
4

2 に答える 2

2

どういう意味ですか?すでに JavaScript のキューに入っている setInterval を clearInterval でキャンセルするということですか?

はい。

setInterval を数回実行し、clearInterval を 1 回だけ実行するとどうなりますか?

それぞれが、その特定のタイマーを停止するsetIntervalために使用できるハンドルを返します。clearInterval各タイマーは個別に処理されます。

setInterval で clearInterval を使用できますか?

はい。

JavaScript はスケジュールされたプロセスをどのように処理しますか?

他のイベントとほとんど同じです。イベントは一定の間隔でトリガーされ、イベント ハンドラーは指定したコールバック関数を呼び出します。イベントがトリガーされたときに何らかのスクリプトが実行されている場合、コントロールがブラウザーに返されたときにイベントが処理されます。

于 2015-04-13T18:37:40.247 に答える
1

setInterval呼び出しは一意の値を返し、に渡されると、その値を返しclearIntervalた特定の呼び出しを停止setIntervalします。

したがって、あなたの例でtestは、呼び出し時にsetInterval返されたものは、別のsetIntervalまたはsetTimeout呼び出しから返された値とは異なります。したがって、clearInterval(test);返された呼び出しのみをtest実行すると、間隔で実行が停止します。

于 2015-04-13T18:34:11.087 に答える