2014-12-20 6 views
0

Я пытаюсь создать имя переменной на основе значения id другой переменной. Я думал, это сработает.Использовать результат переменной как имя для другой переменной

Поэтому, когда я нажимаю одну из четырех таблиц, я получаю идентификаторы таблиц. Пример: 676.

Я затем пытается создать переменную с помощью такого числа

var id = 66; 
var 'table' + id = ''; // expecting var table66 = ''; 

я получаю ошибку выше. но если я попробую

var table66 = '';

Это работает Независимо от того, как я пытаюсь добавить «банки» + «66», равные новой переменной селектора, это не сработает.

Я пытаюсь получить идентификатор и строку. добавить их вместе, чтобы создать новое имя переменного

+0

Это очень похоже на то, что вы пытаетесь решить проблему A, выполняя B, когда C будет намного лучшим способом сделать это. – Phylogenesis

+1

Вероятно, вы должны использовать массив, а не отдельные переменные. – Barmar

ответ

0

Создать объект и использовать переменные как свойства объекта. Это позволит вам обладать видимыми функциями и не загрязнять глобальное окно.

var id = 66; 
var obj={}; 
obj['table' + id] = 'test'; 
alert(obj.table66); //"test" 
0

Вы можете использовать объект окна в качестве объекта и использовать скобки обозначения: enter image description here

id = 66; 
window['table' + id] = 'test'; 
alert(table66); //"test" 
+0

У этого есть проблема в основном создании глобальных переменных, а не в отношении функций. – Phylogenesis