次のクライアント側コードがあるとします。
var d=document.createElement('div');
d.style.position='absolute';
d.style.width='1em';
d.style.height='1em';
d.style.background='red';
document.body.appendChild(d);
for(var i=1e7;i;--i);
赤い四角を作成し、ループでカウント ダウンします。赤い四角が表示される前に、カウントダウンの準備が整うまで待つ必要があります。カウントダウンが始まる前に正方形を表示する最良の方法は何ですか? タイムアウト後にカウントダウンを実行することを考えました:
setTimeout(function(){
for(var i=1e7;i;--i);
},1);
それとももっと良い方法がありますか?コードを WebWorkers に再構築したくありません。時間のかかる線形コードを開始する前に、メッセージを表示する唯一の簡単な方法です。
私の実際の状況は、時間がかかる巨大な計算があり、開始する前にメッセージを表示したいということです。