Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/19: Рейтинг темы: голосов - 19, средняя оценка - 4.95
6 / 7 / 0
Регистрация: 13.10.2010
Сообщений: 159
1

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

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

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

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

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

Есть ли такая возможность в JavaScript и какой синтаксис? Я искал, но видимо такая тема не часто поднимается
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.03.2012, 22:00
Ответы с готовыми решениями:

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

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

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

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

6
z-z
170 / 169 / 56
Регистрация: 22.06.2011
Сообщений: 980
13.03.2012, 23:26 2
Programmer_С++, не понял, зачем к ней так обращаться, но если я правильно понял, то вроде вот так должно работать
Javascript
1
someFunction("index"+1);
0
6 / 7 / 0
Регистрация: 13.10.2010
Сообщений: 159
14.03.2012, 00:08  [ТС] 3
Цитата Сообщение от 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 4
Цитата Сообщение от 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
Просто любитель
626 / 464 / 120
Регистрация: 20.01.2011
Сообщений: 865
Записей в блоге: 2
14.03.2012, 09:28 5
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  [ТС] 6
Цитата Сообщение от GuardCat Посмотреть сообщение
Programmer_С++, а массивы чем не угодили вам?
Javascript
1
2
3
index = [];
index[0] = "one";
index[2] = "two"
А если вместо чисел нужно будет подставлять буквы:

например: indexABC
0
Просто любитель
626 / 464 / 120
Регистрация: 20.01.2011
Сообщений: 865
Записей в блоге: 2
15.03.2012, 09:26 7
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
15.03.2012, 09:26
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.03.2012, 09:26
Помогаю со студенческими работами здесь

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru