2017-09-07 1 views
0

내 차트를 아래의 데이터로 업데이트하려면 무한 루프를 만들고 싶습니다. 나는 세개의 setTimeout()을 가지고 있습니다.하지만 어떻게 그들을 루프에 두어야합니까? 어쩌면 다른 해결책이 더 나은가요?JS에서 setTimeout의 루프를 만드는 방법은 무엇입니까?

setTimeout(function() { 
    addData(myChart, [45, 50, 30, 34, 61, 53, 42], 0,); 
}, 2000); 

setTimeout(function() { 
    addData(myChart, [50, 40, 20, 15, 89, 63, 5], 0,); 
}, 7000); 

setTimeout(function() { 
    addData(myChart, [45, 50, 30, 34, 61, 53, 42], 0,); 
}, 10000); 
+2

사용'setInterval'. – Li357

+0

@AndrewLi, 간격이 다른 세 번의 시간 초과? –

+0

@NinaScholz OP가 무한 루프를 원한다고 말했습니까? – Li357

답변

0

은 사용이 setInterval() 대신, 전달 함수는 모든 n MS (여기에 2000 2 초)을 실행 얻을 것이다. 그리고 첫 번째 데이터 포인트로 myArray을 초기화하십시오.

setInterval(function() { 
 
    addData(myChart, myArray, 0,); 
 
    myArray = updateData(); // this will populate your array with new data after every 2 seconds. 
 
}, 2000); 
 

 
function updateData() { 
 
    return updatedArray; // array with new data points 
 
}

+0

ok 여기에 새 데이터를 입력해야합니다. setInterval? updateData 함수의 – Damien

+0

이 새 데이터를 설정했습니다. – jANVI

관련 문제