6 / 7 / 0
Регистрация: 13.10.2010
Сообщений: 159

Имя переменной

13.03.2012, 22:00. Показов 3985. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Такой вопрос:

есть две переменные:
JavaScript
1
2
var index1=5;
var index2=7;
Затем нужно будет обратиться к одной из них следующим образом:

JavaScript
1
someFunction(index."1"); //Или что типа этого
Т.е. что-то вроде конкатенации имени переменной.

Есть ли такая возможность в JavaScript и какой синтаксис? Я искал, но видимо такая тема не часто поднимается
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.03.2012, 22:00
Ответы с готовыми решениями:

Создание переменной, имя которой включает имя другой переменной
Вот пример кода var y = 1; var x = 'p' + y; eval( 'var' + x + '= 123' );к созданной переменной можно обращаться как к p1. А как быть...

Имя переменной составить из значения другой переменной?
друзья, у меня такая задача: надо имя переменной составить из значения другой переменной. есть переменная identfIc мне нужно...

Имя переменной
Здравствуйте, подскажите пожалуйста что происходит. Есть код: var img = document.getElementsByTagName("img"); var top...

6
z-z
170 / 169 / 56
Регистрация: 22.06.2011
Сообщений: 980
13.03.2012, 23:26
Programmer_С++, не понял, зачем к ней так обращаться, но если я правильно понял, то вроде вот так должно работать
JavaScript
1
someFunction("index"+1);
0
6 / 7 / 0
Регистрация: 13.10.2010
Сообщений: 159
14.03.2012, 00:08  [ТС]
Цитата Сообщение от z-z Посмотреть сообщение
не понял, зачем к ней так обращаться
Например есть набор из нескольких переменных index1, index2, ..., indexN, indexABC, indexLALALA и т.д., и нужна возможность обращаться к этим переменным с помощью "конкатенации" имени (если конечно такая возможность есть в JS). Сразу скажу, что массивы применять исключено (по условию "задачи")

Добавлено через 2 минуты
Цитата Сообщение от z-z Посмотреть сообщение
JavaScript
1
someFunction("index"+1);
Не работает

Добавлено через 16 минут
решение:

eval();
0
6 / 6 / 2
Регистрация: 12.03.2012
Сообщений: 27
14.03.2012, 02:12
Цитата Сообщение от Programmer_С++ Посмотреть сообщение
Например есть набор из нескольких переменных index1, index2, ..., indexN, indexABC, indexLALALA и т.д., и нужна возможность обращаться к этим переменным с помощью "конкатенации" имени (если конечно такая возможность есть в JS). Сразу скажу, что массивы применять исключено (по условию "задачи")

Добавлено через 2 минуты


Не работает

Добавлено через 16 минут
решение:

eval();
eval() - не эффективно, не буду объяснять почему. Я бы вам посоветовал создать пространство имен в виде объекта var mySpace = {}, добавлять к нему свойства mySpace.index1, mySpace.index2 ... mySpace.indexB.

Обращатьcя к ним сможете следующим образом mySpace["indexB"].
Пример:
JavaScript
1
2
3
4
5
6
7
var mySpace = {};
 
for (var i = 0; i < 100; i++) {
   mySpace['index' + i] = i;
}
 
console.log(mySpace['index33']); //33
0
Просто любитель
 Аватар для GuardCat
626 / 464 / 120
Регистрация: 20.01.2011
Сообщений: 865
Записей в блоге: 2
14.03.2012, 09:28
Programmer_С++, а массивы чем не угодили вам?
JavaScript
1
2
3
index = [];
index[0] = "one";
index[2] = "two"
0
6 / 7 / 0
Регистрация: 13.10.2010
Сообщений: 159
15.03.2012, 01:03  [ТС]
Цитата Сообщение от GuardCat Посмотреть сообщение
Programmer_С++, а массивы чем не угодили вам?
JavaScript
1
2
3
index = [];
index[0] = "one";
index[2] = "two"
А если вместо чисел нужно будет подставлять буквы:

например: indexABC
0
Просто любитель
 Аватар для GuardCat
626 / 464 / 120
Регистрация: 20.01.2011
Сообщений: 865
Записей в блоге: 2
15.03.2012, 09:26
Programmer_С++, значит можно использовать объекты.
JavaScript
1
2
3
4
5
6
7
index = {
   abc: "one value",
   def: "two value",
   ghi: function() {alert("hi!")}
}
console.log(index["abc"]);
index["ghi"]();
И хранить там можно, как видите, что угодно.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.03.2012, 09:26
Помогаю со студенческими работами здесь

Динамическое имя переменной
Возможно ли обратиться к переменной, имя которой заранее неизвестно? Ну, например, имеем: var data1 var data2 var data3 Мы знаем,...

Загадочное имя переменной «name»
Наткнулся здесь — https://learn.javascript.ru/ifelse. В комментариях под уроком. Почену когда в первом модальном окне нажать отмене...

Как получить имя переменной?
Для отладки кода появилась необходимость получать имена переменных. Это я могу сделать но только если переменная находится в глобальной...

Можно ли склеить имя переменной из частей?
Доброго дня. for(var 1 = 1; i &lt;= 10; i++){ var {'name' + i} = i; } Что-то подобное возможно? Что бы в итоге...

Как получить имя переменной из массива JavaScript
Здравствуйте, вопрос дилетантский, но ни как не могу найти ответ. Допустим есть массив с данными, который я сортирую. Вопрос: как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

Новые блоги и статьи
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru