Javascript でテキストを表示しようとしていますが、文字列の長さに応じて数秒間しか表示されません。投稿の回答に基づいて、非常に単純な例を作成しましたsetInterval によって行われる反復回数を制限する方法。しかし、私の場合はうまくいきません:
<script>
var iterations = 0,
data = ['a','bbbbbbbb','c'],
interval = setInterval(foo, 4000);
function foo() {
console.log(data[iterations]);
iterations++;
if (iterations >= 4){
clearInterval(interval);
}else if(iterations == 1){
//we want to make time longer in this iteration.
clearInterval(interval);
var interval = setInterval(foo, 8000);
}
}
</script>
4秒後に「a」、8秒後に「bbbbbbbb」、4秒後に「c」を出力したいと思います。
ご覧のとおり、3 つの要素を持つ配列があります。反復 1 では、さらに待機する必要がありますが、待機しません。すべてのケースで 4 秒間待機し、無限ループが発生します。
break などの他の関数が setInterval 関数で機能しないことを確認しました。
forループに基づいていないよりスマートなソリューションでしょうか?? どうもありがとう。