Показать сообщение отдельно
  #4 (permalink)  
Старый 19.03.2013, 10:27
Кандидат Javascript-наук
Отправить личное сообщение для MininAS Посмотреть профиль Найти все сообщения от MininAS
 
Регистрация: 22.09.2009
Сообщений: 122

Сообщение от zilker Посмотреть сообщение
Потому что
a_gameDB[i*ii+i] =
бред.
1. Вы уверены, что на каждой итерации итератор будет ровно на единицу больше предыдущего? Для этого у массивов существует метод push.
Ну и еще немного:
2. - ii и i у вас объявлены до циклов? Если нет, захламляете глобал, используйте for (var i = 0;...
3. - не используйте одинаковые названия итераторов для циклов (у вас 2 цикла с i = 0), тоже может вызвать проблему
4. - не используйте "XxX*YyY" в условии цикла, иначе умножение будет выполнятся на каждой итерации
5. - не используйте document.getElementById('screen_right') в цикле, создайте переменную до цикла
var screen_right = document.getElementById('screen_right');
, а в цикле используйте ее: screen_right.innerHTML
Даже больше: аккумулируйте html в строку-буфер, а уже после цикла присваивайте ее значение в innerHTML - скорость возрастет в разы.
1. Ранее такое у меня сомнений не вызывало как и сейчас, и вообще я делал и по другому qwe = i*ii+i и вставлял qwe вместо i*ii+i. И push перебирал.
2. Почему я захламляю глобал если они постоянно используются у меня в множестве циклов по всему коду.
3. Каким образом?
4. согласен.
5. А вот про это стоп, я использую это просто, чтобы просмотреть что творится с циклом, этого момента в коде не будет.
Ответить с цитированием