Использую библиотеку
Chartist для реализации построения графиков.
Вобщем мне необходимо реализовать добавление новых точек и соединений на графике в цикле при определенном интервале (допустим в 1-у секунду).
Нашел не совсем правильные ответы в постах:
Замыкания внутри циклов в JavaScript. Какова механика работы?
Замыкания внутри циклов javascript
Функции добавления точек и соединений уже присутствуют.
function addLineChart(array, label, series){
var data = array.data || {};
data.labels.push(label);
data.series[0].push(series);
array.update(data);
}
а вот собственно функция внутри который присутствует данный цикл
function demoRun(){
var delay = 'delay';
var delay_count, chart_update_count, event_percent, timer_delay;
var pause = false;
var i = 0;
delay_count = radio_check(delay);
switch (delay_count) {
case 'fast_delay':
delay_count = 0.5;
chart_update_count = 2;
event_percent = 1;
timer_delay = 0.5;
break;
case 'realtime_delay':
delay_count = 1;
chart_update_count = 3;
event_percent = 0.10;
timer_delay = 1;
break;
case 'medium_delay':
delay_count = 1.5;
chart_update_count = 4;
event_percent = 0.05;
timer_delay = 2;
break;
case 'slow_delay':
delay_count = 2;
chart_update_count = 5;
event_percent = 0.025;
timer_delay = 3;
break;
}
log_add('delay count = ' + delay_count);
for(var i = 0; i < 10; i++) {
(function(e) {
setTimeout(function() {
addLineChart(LineChart, 'fuck', Math.random());
}, 1000);
})(i);
}
i = 0;
}
Вобще ничего не понимаю, по данной реализации сетТаймаут отработает 1 раз, и то уже когда все итерации пройдут. А мне необходима отработка таймаута на каждой итерации.
Таймер 1 сек --> Функция --> Таймер 1 сек --> Функция --> Таймер 1 сек --> Функция --> итд итераций в указанном диапазоне цикла. Как быть?