Счетчик на JS. Поясните как работает

338
26 августа 2017, 02:17

Всем привет. Нашел в интернете скрипт, код которого ниже. Суть его в том, что он поочередно показывает числа от 0 до 60230. Такой счетчик или анимация.... не знаю как назвать. И я вот не понимаю как он работает. Я когда сам начал писать такой счетчик, хотел его написать через цикл. Причем задача стояла написать такой счетчик своими руками для тренировки, не прибегая при этом к библиотекам. В этим скрипте я не понимаю почему после первого выполнения if, скрипт не закрывается и идет дальше, а повторяется до тех пор, пока не выполнит то, что мы хотим. Объясните, пожалуйста.

function scroll(val, el, timeout, step) { 
  var i = 0; 
  (function() { 
    if (i <= val) { 
      setTimeout(arguments.callee, timeout); 
      document.getElementById(el).innerHTML = i; 
      i = i + step; 
    } else { 
      document.getElementById(el).innerHTML = val; 
    } 
  })(); 
} 
 
scroll(60203, 'shethik-cifra', 10, 60);
Нам доверяют: 
<div class="shethik-cifra" id="shethik-cifra"></div>

READ ALSO
Как тестировать часть кода через Mocha.js?

Как тестировать часть кода через Mocha.js?

Вникаю в js и тестирование, возник вопросЕсть скрипт с разными функциями - script

312
Как передать все параметры родителю

Как передать все параметры родителю

Есть такая функция в родителе

203
Проблема с браузером firefox

Проблема с браузером firefox

сайт без адаптивности При уменьшении примера в браузере хром и во всех остальных кроме мозилысайт уменьшается под размеры окна

194