Есть функция которая берет массив чисел, разбивает на цифры и тоже загоняет в массив, дальше берет первое число массива и делает просчет до него. Например, число в массиве 2. Считает 1, 2, и т.д. Суть в том, что массивы, по которым делается просчет, меняются каждые 10 сек. Их всего 5. А функция, которая делает этот просчет, срабатывает всего 4 раза. Что не так? Неправильно объявил или неправильно вызвал?
var numbers = [27389, 23948, 59835, 39843, 17263];
var stnum_1;
function replaceNum(i) {
if (i < 0 || i >= numbers.length) {
return;
};
var digits = (numbers[i] + "").split("");
console.log(digits);
stnum_1 = digits[0];
setTimeout(function() { replaceNum(i + 1);checNum(); }, 2000);
};
replaceNum(0);
var StateStnum_1 = 0;
function checNum(){
while (StateStnum_1!=stnum_1) {
StateStnum_1++;
if(StateStnum_1 > 9){StateStnum_1 = 0;}
console.log(StateStnum_1);
};
};
checNum();
Именно функция checNum(); отрабатывает 4 раза, а нужно 5 после каждой смены массива.