我有一组已定义的变量。我动态地为另一个变量设置一个值,该变量最终成为其他已定义变量之一的名称。我想这样做,以便我知道何时在页面上使用哪个设置的变量。
var mwm = "blah"
var vp = "bleh"
var am = "bluh"
var mwm720 = "some link 1"
var mwm717 = "some link 2"
var vp720 = "some link 3"
var vp717 = "some link 4"
...
然后我运行了一些其他脚本,并根据条件将变量值设置为其他变量之一的名称。
var myClass = $(this).attr("class").split(' ')[1];
var currDiv = "div." + myClass;
var currVersion = $(this).parent().attr("id");
var linkVers = myClass + currVersion;
linkVers 变量值最终总是“mwm720”、“mwm717”、“vp720”等。这就是我如何知道何时使用 mwmw720 或 mwm717(等)变量。
期望的行为
如何获得警报/调用以使用存储在动态变量中的变量名称的值?
假设 alert(linkVers);
返回“mwm720”。如何让 $(currDiv).html(linkVers);
插入 mwm720 变量的值(这将是“某个链接 1”),而不是变量的名称?
如果有更好的方法来尝试完成此行为,我肯定会考虑其他解决方案。
最佳答案
您应该将所有变量放在 1 个对象中。喜欢:
var messsages = {
wm : "blah",
p : "bleh",
m : "bluh",
wm720 : "some link 1",
wm717 : "some link 2",
p720 : "some link 3",
p717 : "some link 4"
}
然后在你的函数中你可以使用
alert(messages[linkVers]);
关于Javascript - 变量值是另一个变量的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14405252/