Контролировать цикл -> остановить его на определенный промежуток времени

Ребята, я пытаюсь сделать что-то очень интересное! Я хочу остановить цикл на некоторый промежуток времени, затем отобразить сообщение в течение этого времени и затем продолжить цикл. И, конечно, на следующей итерации он должен снова остановиться на том же месте на некоторое время и снова отобразить сообщение. Вот мой код, но проблема в том, что элементы сортируются слишком быстро (цикл фактически не останавливается), и поэтому сообщения не отображаются, как я хочу. Я удивляюсь, если в Javascript есть что-то вроде функции сна.

  for(var i=0; i<n-1; ++i)
            {
                r++;
                var index = i; // markirame na4alna strelka ^
                document.getElementById("demoto5").innerHTML = "^";
                (function(i) {


                    setTimeout(function() {

                    for(var j=i+1; j<n; ++j)
                    {
                        // markirame sys strelki vseki element
                        if(arr[index] > arr[j])
                        {
                            index = j;  
                        }
                    } 
                    if(i != index)
                    {
                        var temp = arr[i];
                        arr[i] = arr[index];
                        arr[index] = temp;
                    }


                        console.log(i);
                    }, i * 1000);
                })(i);

            }

0 ответов

Другие вопросы по тегам