Показать сообщение отдельно
  #1 (permalink)  
Старый 04.09.2021, 12:23
Интересующийся
Отправить личное сообщение для uzlprog Посмотреть профиль Найти все сообщения от uzlprog
 
Регистрация: 04.09.2021
Сообщений: 11

Перебор эл. массива с целью присвоения значения переменной.
Всем доброго дня! Задача такая: есть массив данных arr, мне нужно стряпать функцию, которая бесконечно (по кругу) перебирает значения каждого элемента массива через определенное время (1 сек) и присваивает это значение переменной a. При обращении она должна возвращать текущее значение переменной а.

Я новичок в JS, пробовал по разному, но не получается... Посоветовали сделать так:

let a;
function f(i = 0) {
  if (i == arr.length) i = 0;
  a = arr[i++];
  //console.log(a);
  setTimeout(() => {
    f(i);
  }, 1000);
}


Мне нужно вместо //console.log(a); вернуть текущее значение а. Я по разному переписывал этот код, но ничего не получается. Я не пойму в чем дело? Куда нужно вставить return(a)? Или при такой конструкции не получится вернуть текущее значение?
Ответить с цитированием