我想从一个变量中获取一个值,然后将其用作另一个变量的名称。我得到这样的东西:

var eval(BodyWeight[i]["ExerciseTitle"]) = BodyWeight[i]["ExerciseVideo"];


这给了我一个错误,'错过了;声明前”。

有任何想法吗?

最佳答案

虽然eval将为您提供一种形式的变量变量,但它很杂乱,并可能导致语法错误:

try {
    eval('var ' + BodyWeight[i]["ExerciseTitle"] + ' = BodyWeight[i].ExerciseVideo');
} catch () {
    // what to do here if BodyWeight[i]["ExerciseTitle"] isn't a valid variabe name?
}


最好使用对象属性而不是局部变量。

thing[BodyWeight[i].ExerciseTitle] = BodyWeight[i].ExerciseVideo;

10-04 16:28