Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 10.10.2014, 14:01
Новичок на форуме
Отправить личное сообщение для REMOX Посмотреть профиль Найти все сообщения от REMOX
 
Регистрация: 27.09.2014
Сообщений: 7

не могу задать новый элемент массива
Доброго времени суток!

решил запостить вопрос, так как сам не могу понять, в чем проблем (возможно, надо выспаться)) )
Код:
var divdeffo=rez[0].split('-');
var divdeffc=divdeffo.length;
var rezdmin = new Array();
var rezdfpl = new Array();
							
for(i=0;i<divdeffc;i++){
var divrezhide5=document.getElementsByClassName(divdeffo[i])[0].getElementsByClassName("rez")[0].style="display: none;";
var divrezhide6=document.getElementsByClassName(divdeffo[i])[0].getElementsByClassName("rez")[1].style="display: none;";
								
var ddff=divdeffo[i];
var n = i+3;
var armrez=rez[n].split('-');
alert("755");
rezdmin[i][0]=ddff;
rezdmin[i][1]=window['defarm_'+ddff+"1"]-armrez[0];
rezdmin[i][2]=window['defarm_'+ddff+"2"]-armrez[1];
rezdmin[i][3]=window['defarm_'+ddff+"3"]-armrez[2];
rezdmin[i][4]=window['defarm_'+ddff+"4"]-armrez[3];
rezdmin[i][5]=window['defarm_'+ddff+"5"]-armrez[4];
rezdmin[i][6]=window['defarm_'+ddff+"6"]-armrez[5];
rezdmin[i][7]=window['defarm_'+ddff+"7"]-armrez[6];
rezdmin[i][8]=window['defarm_'+ddff+"8"]-armrez[7];
rezdmin[i][9]=window['defarm_'+ddff+"9"]-armrez[8];
rezdmin[i][10]=window['defarm_'+ddff+"10"]-armrez[9];
rezdmin[i][11]=window['defarm_'+ddff+"11"]-armrez[10];
alert("745");
rezdpl[i][0]=ddff;
rezdpl[i][1]=armrez[0];
rezdpl[i][2]=armrez[1];
rezdpl[i][3]=armrez[2];
rezdpl[i][4]=armrez[3];
rezdpl[i][5]=armrez[4];
rezdpl[i][6]=armrez[5];
rezdpl[i][7]=armrez[6];
rezdpl[i][8]=armrez[7];
rezdpl[i][9]=armrez[8];
rezdpl[i][10]=armrez[9];
rezdpl[i][11]=armrez[10];
alert("765");
}
в браузере такое-
http://shot.qip.ru/00bDte-515iw6PH2g/
http://shot.qip.ru/00bDte-515iw6PH2h/

не могу понять, в чем проблема,,
почему TypeError: rezdmin[] is undefined ?
спасибо наперед)

Последний раз редактировалось REMOX, 10.10.2014 в 15:06.
Ответить с цитированием
  #2 (permalink)  
Старый 10.10.2014, 14:09
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

да ты удали дублирующийся код для начала.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #3 (permalink)  
Старый 10.10.2014, 14:24
Новичок на форуме
Отправить личное сообщение для REMOX Посмотреть профиль Найти все сообщения от REMOX
 
Регистрация: 27.09.2014
Сообщений: 7

Сообщение от danik.js Посмотреть сообщение
да ты удали дублирующийся код для начала.
извините, а где там дубли? О_о
Ответить с цитированием
  #4 (permalink)  
Старый 10.10.2014, 14:28
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Дык в глазах рябит от дублирующихся строк. Тебе и правда нужно поспать)
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #5 (permalink)  
Старый 10.10.2014, 14:36
Новичок на форуме
Отправить личное сообщение для REMOX Посмотреть профиль Найти все сообщения от REMOX
 
Регистрация: 27.09.2014
Сообщений: 7

Сообщение от danik.js Посмотреть сообщение
Дык в глазах рябит от дублирующихся строк. Тебе и правда нужно поспать)
где?
вот есть же люди - вместо того, чтобы за 3 секунды подсказать -
будут днями издеваться и не подскажут...
спасибо и таким людям))
Ответить с цитированием
  #6 (permalink)  
Старый 10.10.2014, 15:56
Новичок на форуме
Отправить личное сообщение для REMOX Посмотреть профиль Найти все сообщения от REMOX
 
Регистрация: 27.09.2014
Сообщений: 7

изменил

Код:
var rezdmin = new Array();
var rezdpl = new Array();
на

Код:
var rezdmin = new Array( Array() );
var rezdpl = new Array( Array() );
по совету друга, теперь 1й записывается, а 2й - нет, хотя по образу и подобию... в чем проблем??

Код:
rezdmin[i][0]=ddff;
rezdmin[i][1]=window['defarm_'+ddff+"1"]-armrez[0];
rezdmin[i][2]=window['defarm_'+ddff+"2"]-armrez[1];
rezdmin[i][3]=window['defarm_'+ddff+"3"]-armrez[2];
rezdmin[i][4]=window['defarm_'+ddff+"4"]-armrez[3];
rezdmin[i][5]=window['defarm_'+ddff+"5"]-armrez[4];
rezdmin[i][6]=window['defarm_'+ddff+"6"]-armrez[5];
rezdmin[i][7]=window['defarm_'+ddff+"7"]-armrez[6];
rezdmin[i][8]=window['defarm_'+ddff+"8"]-armrez[7];
rezdmin[i][9]=window['defarm_'+ddff+"9"]-armrez[8];
rezdmin[i][10]=window['defarm_'+ddff+"10"]-armrez[9];
rezdmin[i][11]=window['defarm_'+ddff+"11"]-armrez[10];
alert("745");
rezdpl[i][0]=ddff;
rezdpl[i][1]=armrez[0];
rezdpl[i][2]=armrez[1];
rezdpl[i][3]=armrez[2];
rezdpl[i][4]=armrez[3];
rezdpl[i][5]=armrez[4];
rezdpl[i][6]=armrez[5];
rezdpl[i][7]=armrez[6];
rezdpl[i][8]=armrez[7];
rezdpl[i][9]=armrez[8];
rezdpl[i][10]=armrez[9];
rezdpl[i][11]=armrez[10];
Ответить с цитированием
  #7 (permalink)  
Старый 10.10.2014, 16:08
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Ты не захотел потратить пары минут, на то чтобы привести код в порядок.
Почему кто-то должен тратить свое время чтобы разобраться в этих грядках?
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #8 (permalink)  
Старый 10.10.2014, 16:28
Новичок на форуме
Отправить личное сообщение для REMOX Посмотреть профиль Найти все сообщения от REMOX
 
Регистрация: 27.09.2014
Сообщений: 7

Сообщение от danik.js Посмотреть сообщение
Ты не захотел потратить пары минут, на то чтобы привести код в порядок.
Почему кто-то должен тратить свое время чтобы разобраться в этих грядках?
что значит "привести код в порядок"?

вот так?

Код:
var divdeffo=rez[0].split('-');
var divdeffc=divdeffo.length;
var rezdmin = new Array( new Array() );
var rezdpl = new Array( new Array() );

for(i=0;i<divdeffc;i++){
var divrezhide5=document.getElementsByClassName(divdeffo[i])[0].getElementsByClassName("rez")[0].style="display: none;";
var divrezhide6=document.getElementsByClassName(divdeffo[i])[0].getElementsByClassName("rez")[1].style="display: none;";

var ddff=divdeffo[i];
var n = i+3;
var armrez=rez[n].split('-');

rezdmin[i][0]=ddff;
rezdpl[i][0]=ddff;
for (var kk=1;kk<=11;kk++){
var ll=kk-1;
rezdmin[i][kk]=window['defarm_'+ddff+kk]-armrez[ll];
rezdpl[i][kk]=armrez[ll];
}
а толку? те же яйца, в тот же профиль, только добавилось переменных)
код в порядке - это, минимум, когда он работает,, если не работает - о каком порядке можно вести речь..
был бы код в порядке - я бы не создавал пост о проблеме, а вы, вместо того, чтобы хоть подсказать, в чем может быть заковырка - издеваетесь...

Последний раз редактировалось REMOX, 10.10.2014 в 16:45.
Ответить с цитированием
  #9 (permalink)  
Старый 10.10.2014, 17:05
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

А че вобще за задача стоит? Код все равно не читаемый, ибо имена переменных обфусцированы. Пожалуйста, не пости здесь офусцированный код. Пости исходник.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #10 (permalink)  
Старый 10.10.2014, 17:29
Аватар для Safort
Профессор
Отправить личное сообщение для Safort Посмотреть профиль Найти все сообщения от Safort
 
Регистрация: 23.12.2013
Сообщений: 1,856

REMOX,
Цитата:
что значит "привести код в порядок"?
Отформатировать, логичнее назвать имена переменных, убрать дублирование.

Не понимаю, зачем ты пишешь так
var rezdmin = new Array( new Array() );
var rezdpl = new Array( new Array() );

если можно так
var rezdmin = [[]];
var rezdpl = [[]];


Ну и тут тоже можно по короче
var divrezhide5=document.getElementsByClassName(divdeffo[i])[0].getElementsByClassName("rez")[0].style="display: none;";
var divrezhide6=document.getElementsByClassName(divdeffo[i])[0].getElementsByClassName("rez")[1].style="display: none;";

Например, так
var rezes = document.getElementsByClassName(divdeffo[i])[0].getElementsByClassName("rez");
var divrezhide5=rezes[0].style="display: none";
var divrezhide6=rezes[1].style="display: none";
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу настроить выборку элементов из массива menscool Events/DOM/Window 4 11.07.2014 21:19
не могу выбрать элемент alex2012 AJAX и COMET 2 05.11.2012 02:15
Массив из картинок. Не могу изменить свойство элемента массива Володя Шишкин Ваши сайты и скрипты 7 17.02.2012 11:21
Удалить элемент из массива, не убирая с экрана KamalovRadik Javascript под браузер 0 15.10.2011 12:48
Не могу определить элемент AlexMak Общие вопросы Javascript 23 21.01.2009 17:50