|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.01.2011, 22:43 | #1 |
Регистрация: 19.01.2011
Сообщений: 8
|
Вопрос по переменным JavaScript
Доброго времени суток!
Ребят, подскажите, пожалуйста, как обратится ко всем переменным в скрипте, например имя которых начинается с "counter" + исключить одну из них? Переменные, к которым нужно обратится, без перечисления каждой: counter1 counter2 counter3 counter4 counter5 и т.д. (К примеру, для того, чтобы присвоить всем им значение 0). |
22.01.2011, 23:49 | #2 |
Форумчанин
Регистрация: 08.07.2010
Сообщений: 679
|
Использовать массив
|
22.01.2011, 23:57 | #3 |
Регистрация: 19.01.2011
Сообщений: 8
|
Может я не совсем точно выразился, в силу того, что я новичек! Это пользовательские переменные, и их число будет все время увеличиваться...
|
23.01.2011, 02:56 | #4 |
Форумчанин
Регистрация: 08.07.2010
Сообщений: 679
|
Приведите свой пример, а мы уж посмотрим что делать.
Насколько я знаю javascript не имеет нормального функционала по работе с динамическими именами переменных. А создавать кучу переменных с циферками - имхо бред, для этого и придуманы массивы. Что мешает использовать var counter = new Array(значение1,значение2,значение3 ) И вызывать counter[0] counter[1] counter[2] ?????? |
23.01.2011, 15:15 | #5 |
Пользователь
Регистрация: 31.10.2010
Сообщений: 53
|
для динамического именования можно использовать такой принцип:
Код HTML:
var temp = 0, i = 1; eval('temp = counter' + (i++) + ';'); do { alert( temp ); eval('temp = counter' + (i++) + ';'); } while(temp != undefined); Хотя Cronos20 прав, такой подход нежелателен, лучше использовать массивы. Если нужно присвоить значение, то в этом цикле пишите так: Код HTML:
eval('counter' + (i++) + ' = 0'); Последний раз редактировалось yury_coder; 23.01.2011 в 15:21. |
23.01.2011, 23:31 | #6 |
Регистрация: 19.01.2011
Сообщений: 8
|
Есть массив:
var click = new Array (); click[0] = 0; click[1] = 0; click[2] = 0; click[3] = 0; click[4] = 0; click[5] = 0; и т.д. Элементов массива очень много. Всем элементам присвоено "ноль". При исполнении скрипта все элементы массива получают разные цифры, например: click[0] = 45; click[1] = 78; click[2] = 0; click[3] = 1; click[4] = 3; click[5] = 2; и т.д. и нужно довольно часто обращаться ко всем элементам массива, чтобы опять присвоить им "нули". Как к ним обратится, чтобы не перечислять их все каждый раз + один из элементов нужно исключить? Например, выбрать: click[0] = 45; click[1] = 78; click[2] = 0; click[3] = 1; click[5] = 2; и т.д. ... а элемент "click[4] = 3;" должен с таким же значением и остаться. |
24.01.2011, 01:00 | #7 |
Пользователь
Регистрация: 31.10.2010
Сообщений: 53
|
Я, честно говоря, не понял, какой именно элемент нужно пропустить. Допустим, это всегда 4 элемент, тогда обнуление будет выглядеть так:
Код HTML:
var exception = 4 //Какой элемент будем пропускать //Массив уже есть, его описывать я не буду //Обнуление: for( var i = 0; i < click.length; i++ )//В цикле проходим весь массив if( i != exception) click[ i ] = 0; //Обнуляем только если нужно |
29.01.2011, 09:20 | #8 |
Регистрация: 19.01.2011
Сообщений: 8
|
Работает, круто! Все оказалось гораздо проще чем я думал Большое спасибо всем, кто откликнулся!
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вопрос по Javascript синтаксису... | DrStrangeLove | JavaScript, Ajax | 3 | 01.01.2011 20:16 |
Вопрос по переменным | ronston | Общие вопросы C/C++ | 6 | 06.10.2010 10:27 |
Вопрос о ошибки Javascript | Slash74 | JavaScript, Ajax | 0 | 13.05.2010 19:56 |
Вопрос По Javascript | MoT9I | JavaScript, Ajax | 1 | 05.01.2009 19:28 |
Вопрос (новичка) по переменным. | grey | Помощь студентам | 5 | 03.11.2007 17:25 |