コンソールにaaa
を出力し10秒後にbb
と出力させたいです。
var loop = 1; console.log(loop); while (loop <= 10) { console.log("aaa"); setTimeout(function () { console.log("bbb"); }, 1000); loop++; }
このように記載してみると、aaa
が出力された10秒後に、まとめてbb
が10回出力されます。
そこで、次は下記のようにしてみましたが、希望通りにはなりませんでした。
var loop = 1; console.log(loop); while (loop <= 10) { $.when( console.log("aaa"); ).done(function(){ setTimeout(function () { console.log("bbb"); }, 1000) loop++; }); }
どのように記載すれば、実現するでしょうか。
希望は1秒毎に10回、bを表示することでしょうか?
setIntervalではだめですか?
10秒後に1回表示するなら1000を10000にしてループしなければいいのでは?
やりたいことが不明瞭です。
1つの"aaa"の10秒後(コードだと1秒後?)に1つの"bb" (コードだと"bbb")が表示されて欲しいのだろうとは思いますが、次のループの"aaa" はどういうタイミングで表示したいのでしょうか? 前の"aaa"の直後? 前の"bbb"の直後?
@yambejpさん
質問ありがとうございます。ちょっと違うようです。
yambejpさんに解釈頂いた事が希望です。
@int32_tさん
記載したコードの誤りがあり、不明瞭であることご指摘ありがとうございます。
推察頂いた理解であってます。次のループの"aaa"は前の"bbb"の直後が希望です。
回答2件
あなたの回答
tips
プレビュー