Код зависает на функции JS

436
24 ноября 2016, 10:22

Мой парсер падает на этой функции, ошибок не выводится, соответственно, он просто "думает" и не выводит ничего в консоль.

function parse() {
  var forParsing = [];
  for (var i=1; i++; i=count) {
    forParsing.push({
      tag: $('#tag'+i).val(),
      variableName: $('#variableName'+i).val(),
      variableNameFor: $('#variableNameFor'+i).val(),
    });
  }
  console.log(forParsing);
}

Может, какая синтаксическая ошибка, которую я явно не могу увидеть?

Answer 1

Все просто: неверно определение цикла.

в блоке for есть три части разделенные ;

  1. инициализация переменных
  2. условие остановки
  3. финально выражение

В данном коде в части условие остановки идет постфиксный инкремент.

Цикл останавливается когда условие ложно: в данном случае когда i будет равно 0. И это будет весьма не скоро.

В финальном выражении идет присвоение переменной i значения count таким образом - сбрасывая значение установленное в части условие остановки.

В итоге цикл получается бесконечным, если только count не имеет значение 0.

Судя по всему цикл должен был выглять так:

for (var i=1; i<=count;i++) {

То есть, повторять тело цикла, count раз.

READ ALSO
Подправить JS код

Подправить JS код

Есть JS код который обрабатывает результаты теста(найден на просторах интернета), но он работает если в тесте 5 вопросов. Как сделать чтобы...

523
Обработка POST запроса

Обработка POST запроса

Есть POST запрос на yandex. translate ([URL="https://tech.

534
Выделение текущего пункта меню (PHP)

Выделение текущего пункта меню (PHP)

При изменении стиля, меняется всё меню целиком. .

492
Не вешается hover background rgba на картинку

Не вешается hover background rgba на картинку

что я делаю не так? не работает и все тут :( нужно при наведении что бы на картинку накладывался цвет. Я наверное не знаю хитрость :).

543