求解有關如何顯示陣列的數據的問題後每XXX秒與該代碼setIterval funcion:的setInterval不能使用到其他功能
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);
interval = setInterval(foo, 8000);
}
}
我要清理的東西和封裝成這一切功能。問題是,當我將全局變量插入函數時,foo表示所有變量都是未知的,所以我必須將它們作爲attrs傳遞。此外,我已將間隔更改爲此以檢測它,但現在它不起作用。顯示在同一時間的所有數據,似乎如果我設置在Chrome調試流應用斷點似乎是正確的忽略setIterval
runTest();
function runTest(){
var iterations = 0,
data = [1,2,3,4,5],
maxIterations = 5,
interval = setInterval(foo(iterations,data,maxIterations),4000);
}
function foo(iterations,data,maxIterations){
var sentence = data[iterations];
var div = d3.select('div').append('p').text(sentence);
iterations++;
if (iterations >= maxIterations){
clearInterval(this);
}else{
clearInterval(this);
interval = setInterval(foo(iterations,data,maxIterations),4000);
}
}
。
你知道問題在哪裏嗎?謝謝!