Javascript变量变量语法错误

问题描述

| 我有一个包含ID的变量。
var mediaid = \'5\';
我有一个变量集
var t1 = \'First\';
var t2 = \'Second\';
var t3 = \'THird\';
etc...
我正在尝试在jQuery的.append函数获取变量的变量。
$(\'#block\').append(\'<span>{t+mediaid}</span>\');
例如,如果mediaid为3,则
{t+mediaid}
应该为t3。但是我有语法错误。你能修好它吗..     

解决方法

$(\'#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>\');
    ,为什么不将变量而不是魔术命名的变量存储在数组中?然后,您可以按索引访问数组元素。
var mediaid = 5;
var t = [
    \'Zeroth\',\'First\',\'Second\'
    // etc...
];

$(\'#block\').append(\'<span>\' + t[mediaid] + \'</span>\');
    ,尝试这个:
$(\'#block\').append(\'<span>\' + eval(\'t\'+mediaid) + \'</span>\');