03.10.2010, 04:32
|
|
Интересующийся
|
|
Регистрация: 11.09.2010
Сообщений: 23
|
|
Неравномерные массивы
Завожу массив следующего вида:
MenData = new Array();
mento = new Array();
menurl = new Array();
//запоняем менюшку
menurl = new Array('Главная', 'main.html');
mento.push(menurl);
MenData.push(mento);
menurl = new Array('Услуги', 'services.html');
mento.push(menurl);
menurl = new Array('Грузоперевозки', 'gruzo.html');
mento.push(menurl);
menurl = new Array('Откачка септиков', 'septicus.html');
mento.push(menurl);
menurl = new Array('Вывоз мусора', 'musor.html');
mento.push(menurl);
MenData.push(mento);
menurl = new Array('Статьи', 'press.html');
mento.push(menurl);
MenData.push(mento);
menurl = new Array('Вакансии', 'vacancy.html');
mento.push(menurl);
MenData.push(mento);
menurl = new Array('Контакты', 'contacts.html');
mento.push(menurl);
MenData.push(mento);
alert('Это у нас '+MenData[1][0][0]);
alert(MenData);
Первый alert выдаёт "Это у нас Главная" вместо предполагаемого "Это у нас Услуги". Второй - пять раз подряд записанный массив. Где я ошибся в понимании массивов в javascript?
|
|
03.10.2010, 10:14
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
kukuyok,
А каким местом ваша тема относиться к разделу Сайт Javascript.ru?
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
03.10.2010, 12:21
|
Новичок на форуме
|
|
Регистрация: 19.02.2008
Сообщений: 9,177
|
|
Сообщение от kukuyok
|
Где я ошибся в понимании массивов в javascript?
|
http://alljs.ru/articles/array/
|
|
03.10.2010, 12:48
|
|
Интересующийся
|
|
Регистрация: 11.09.2010
Сообщений: 23
|
|
Сообщение от Gozar
|
kukuyok,
А каким местом ваша тема относиться к разделу Сайт Javascript.ru?
|
Ой-йой! Пардонюсь! Перенести бы сюда :-[
http://javascript.ru/forum/misc/
|
|
03.10.2010, 13:44
|
Профессор
|
|
Регистрация: 16.03.2010
Сообщений: 1,618
|
|
Сообщение от kukuyok
|
Где я ошибся в понимании массивов в javascript?
|
По-моему, ты ошибаешься в понимании javascript В javascript все делается легко и непринужденно, чтобы написание каждой строчки кода приносило удовольствие! А твой массив внешне похож на твой аватар. Нафига создавать такого урода, такими уродскими методами? С ним же невозможно будет работать!!!!
Почему бы не сделать так:
var MenData = [
['Главная', 'main.html'],
['Услуги', 'services.html'],
['Грузоперевозки', 'gruzo.html'],
['Откачка септиков', 'septicus.html'],
['Вывоз мусора', 'musor.html'],
['Статьи', 'press.html'],
['Вакансии', 'vacancy.html'],
['Контакты', 'contacts.html'],
['Контакты', 'contacts.html']
]
??? Правда в данном случае удобнее использовать объекты!!!
|
|
03.10.2010, 14:10
|
Профессор
|
|
Регистрация: 16.03.2010
Сообщений: 1,618
|
|
И вовсе непонятно, зачем столько переменных? mento и menurl вообще лишние! Если очень хочется добавлять подмассивы по-очереди, переменные необязательны:
var MenData = [];
MenData.push(['Главная', 'main.html']);
MenData.push(['Услуги', 'services.html']);
MenData.push(['Грузоперевозки', 'gruzo.html']);
MenData.push(['Откачка септиков', 'septicus.html']);
MenData.push(['Вывоз мусора', 'musor.html']);
MenData.push(['Статьи', 'press.html']);
MenData.push(['Вакансии', 'vacancy.html']);
MenData.push(['Контакты', 'contacts.html']);
|
|
03.10.2010, 15:36
|
|
Интересующийся
|
|
Регистрация: 11.09.2010
Сообщений: 23
|
|
Sweet,
О! Спасибо! Давно искал такую запись! Но! Мне нужно, чтобы в массиве массивов массивов была такая структура:
MenData - массив, содержащий всё меню. Состоит из массивов mento.
|
mento - подмассив, в котором 1-й элемент - массив из двух элементов: Названия пункта и URL; 2-й элемент (если есть) - длинный массив из таких же mento (для различения ввёл доп. переменную menurl).
А запись таким образом, который предлагаете Вы - заводит простой одномерный массив.
Последний раз редактировалось kukuyok, 03.10.2010 в 15:40.
|
|
03.10.2010, 15:44
|
|
Интересующийся
|
|
Регистрация: 11.09.2010
Сообщений: 23
|
|
Гммм... описал, что хотел получить и, кажется, сам себя поймал...
|
|
03.10.2010, 19:05
|
|
Интересующийся
|
|
Регистрация: 11.09.2010
Сообщений: 23
|
|
Вот, собственно, что мне было нужно:
MenData = [
[
['Главная', 'main.html']
],
[
['Услуги и цены', 'service.html'],
[
['Вывоз мусора', 'musor.html'],
['Грузоперевозки', 'gruzo.html'],
['Откачка септиков', 'septicus.html']
]
],
[
['Статьи', 'press.html']
],
[
['Вакансии', 'vacancy.html']
],
[
['Контакты', 'contacts.html']
]
];
Теперь всё работАт. Спасибо, Sweet!
|
|
03.10.2010, 22:30
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
kukuyok,
для таких структур используют json - обычный объект javascript, а не изврат с массивами.
извращенцы
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
|
|