如何在不使用eval()的情况下将一个名称等于变量字符串的成员作为目标?

时间:2016-10-01 18:48:35

标签: javascript



q1 = {
  qTxt: "I want this text to be displayed in the alert box.",
  usedBefore: true
};

var foo = "q1"
alert(eval(foo).qTxt);




在StackOverflow上搜索其他答案时,我找到了一个使用 eval()的问题解决方案。 但是之前我确实读过 eval()是坏的(eval是邪恶的)并且它不应该被使用。

如果使用它确实不好,我怎么能得到相同的结果。

我听说过 alert(会员[' foo'])之类的内容,但是当我尝试使用它时,它没有工作: alert (['富'] qTxt);

编辑:我没有从"复制"中得到我的问题的答案。这个问题只显示了如何更改参数,但是我试图更改第一部分(q1)似乎对我不起作用。

编辑2:我的代码。



q1 = {
  qTxt: "The answer is true.",
  usedBefore: false
};
    
    var foo = "q1";
    alert([foo].qTxt); // without the dot, an error  comes up




0 个答案:

没有答案