コンテキスト: 私はゲームのアイデアを楽しみながら楽しんでいます。私はhool5のキャンバスとjavascriptでそれをやっています。まわり。複数のタイムアウトまたは複数の呼び出しがJavascriptである
問題: 私のゲームでは、時々刻々と起こることがたくさんあり、新しいことは常に作成されています。数秒以内であれば、精度は必要ありません。
私の最初のアイデアは、実行時間に基づいて新しいタスクを挿入することによって、手作業でソートされた配列を持っていただけで、タイムアウト時に関数を設定し、新しいタスクを取得し、次の行の次の質問を取得し、タイムアウトを待つ。新しい項目が追加されると、それが最初の行であるかどうかをチェックし、タイムアウトを適切に変更する。
もっと複雑に聞こえます。
しかし、私は不思議に思っていました....多くのタイマーを設定することの落とし穴は何ですか? 最初は多くのタイマーを設定するのは悪い考えだと思っていましたが、ブラウザが上記のように時間を処理しているのか、それとも他のエフェクティブな方法があるのだろうかと思い始めました。
基本的には、私の懸念を要約すると: 複数のタイムアウトを使用する際の問題は何ですか? この種の方法にはどんな落とし穴がありますか?または「Gotchas」
ありがとうございました!
これがオプションかどうかはわかりませんが、1回のタイムアウトで再帰を作成し、複数の関数を呼び出すことができます(https://jsfiddle.net/Lg0wyt9u/1220/)。 –
これは 'requestAnimationFrame'でも行うことができますhttps://jsfiddle.net/Lg0wyt9u/1221/ –