0

Есть пример такого кода, я что то не пойму почему он не обновляется при каждой итерации в цикле.

То есть должно работать быть как подобие секундомера, а он вместо этого заменяет только в самом конце цикла.

Задержка в цикле не нужна, цикл должен работать быстро!

for(var i = 0; i <= 200000; i++){
  $('#data').html(i);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="data">0</div>

Объясните пожалуйста в чем причина?

Sergey Mironov
  • 820
  • 5
  • 17
  • В браузере есть event-loop. Ваш цикл работает в рамках обработки какого-то события. Пока обработка события не закончена, ничего дальше обрабатываться и перерисовываться не будет. – Sergei Kirjanov Aug 07 '20 at 23:39
  • Задержка нужна для того, чтобы ты увидел, число на каждой итерации. Сейчас как раз без задержки и работает. :) – Grundy Aug 08 '20 at 00:33

0 Answers0