Переменная Javascript Переменная (синтаксическая ошибка) - PullRequest
1 голос
/ 26 мая 2011

У меня есть переменная, которая содержит идентификаторы.

var mediaid = '5';

И у меня есть набор переменных

var t1 = 'First';
var t2 = 'Second';
var t3 = 'THird';
etc...

Я пытаюсь получить переменную переменной внутри функции japu .append.

$('#block').append('<span>{t+mediaid}</span>');

Например, если mediaid равен 3, {t+mediaid} должно быть t3. Но у меня есть синтаксические ошибки. Вы можете это исправить ..

Ответы [ 3 ]

3 голосов
/ 26 мая 2011
$('#block').append('<span>'+{t+mediaid}+'</span>');

Я не думаю, что это возможно.

Возможно, вам придется сделать:

$('#block').append('<span>'+window['t'+mediaid]+'</span>');
                           //if all those variables are in the window's scope

Лучше:

var mediaid = '5';
var t = ['', 'first', 'second', 'third', ...];

$('#block').append('<span>'+t[mediaid]+'</span>');
1 голос
/ 26 мая 2011

Почему бы не хранить ваши переменные в массиве вместо магически названных переменных? Затем вы можете получить доступ к элементам массива по индексу.

var mediaid = 5;
var t = [
    'Zeroth',
    'First',
    'Second'
    // etc...
];

$('#block').append('<span>' + t[mediaid] + '</span>');
0 голосов
/ 26 мая 2011

Попробуйте это:

$('#block').append('<span>' + eval('t'+mediaid) + '</span>');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...