質問: "#99ff66";//緑色 //長方形のパスを作成。第一引数がx座標(横)、第二引数がy座標(縦)、第三引数が横幅、第四引数が高さだ。座標というのは、ブラウザの表示領域のX軸とY軸のことだ。0,0にすれば、ブラウザの左上に表示される。 ctx.rect(x,y,100,200);//rectは、rectangel(長方形、矩形)の略である。 //fillで長方形を塗りつぶす。何も指定しないと黒色となる。 ctx.fill();//fillは、容器や場所などをいっぱいにする、満たすという意味だ。 //最後にbeginPathで開始したパスを閉じる。 ctx.closePath(); siraberu(); //console.time("time2"); setTimeout(draw,interval); //console.timeEnd("time2"); } //描画し終えてから秒数を測定してしまう var count2 =0; function siraberu2(){ if(count2<=20) { document.getElementById("count2").textContent= count2+"秒立った"; setTimeout(siraberu2,1000); count2 += 1; } } draw(); //console.timeEnd("time"); siraberu2(); ```
回答: コードは下記で合っていますか。 ``` 'use strict'; function A (delay, callbackfn) { setTimeout(callbackfn, delay); B(1000, function () { console.log('B'); }); } function B (delay, callbackfn) { setTimeout(callbackfn, delay); } A(16.6, function () { console.log('A'); }); ``` * `A()`, `B()` 共に即時実行されています * 16.6ミリ秒後に `A()` が実行されているわけではありません (Aの実行は既に終わっています) * 1000ミリ秒後に `B()` が実行されているわけではありません (Bの実行は既に終わっています) `setTimeout()` はタイマー処理を登録する関数です。 指定した遅延時間経過後にタイマーイベントが発火するようなものだと思ってください。 Re: aaaaaaaa さん