コンソールの結果が10ミリ秒間隔にならないのはなぜですか?

HTML5でsetTimeoutに設定できる最小ミリ秒は4ミリ秒です。そのため、数ミリ秒の誤差が生じる場合があります。
2020年6月4日
ユーザー

コンソールで動作確認をする場面について、質問があります。

例えば、動画の2:41辺りで、

2423
2435
2447
2457

上記のようにコンソールでは表示されていましたが、

2457 - 2447 = 10 (ミリ秒差)
2447 - 2435 = 12 (ミリ秒差)
2435 - 2423 = 12 (ミリ秒差)

と、上記のようにそれぞれの表示ミリ秒の間隔を計算すると、10ミリ秒毎に処理を施すコードを書いたにも関わらず、10ミリ秒毎になっていません。これは、他の場面でも同じで、他の場面では、11ミリ秒差というのも見当たりました。

これは何故なのでしょうか?

ご教示のほど、よろしくお願いいたします。

この回答を見るにはプレミアムプランへの登録が必要です

プレミアムプランとは?

このレッスンの質問と回答(18)