загружать текст прям в цикле Js

Помогите, столкнулся с проблемой. Я пишу программу для "СкороЧтения", я получаю содержание textarea, разбиваю его по словам в массив(через метод split()) и через цикл с задержкой вывожу каждый элемент массива на экран. И так к проблеме. Текст начинает менятся только после окончания цикла. то есть загружается последний элемент массива (последнее слово). а во время работы цикла страница как бы недоступна И как бы и вся проблема

            
            input_val = String($('.main-input').val());
            
            var arrayOfStrings = input_val.split(' ');         
            
            for (var i in arrayOfStrings){
                
                sleep(200, arrayOfStrings[i]);
            }
                        
        });
        function sleep(milliseconds, x) {
            const date = Date.now();
            let currentDate = null;
            do {
                currentDate = Date.now();
            } while (currentDate - date < milliseconds);
            
        }

Я уже не знаю что делать...( Я понимаю что скорее всего это особенность Js но тем не менее


Ответы (1 шт):

Автор решения: Алексей Соболев
let input_val = "Ваша строка";
let arrayOfStrings = input_val.split(' ');
let x = 0;
setInterval(function() {
  func(x)
}, 2000);

function func() {
  if (x >= arrayOfStrings.length) {
    clearInterval()
  } else {
    console.log(arrayOfStrings[x])
  }
  x = x + 1;
}
console.log("доступ к старнице");
→ Ссылка