如何把变量值内的另一个变量名在Javascript
问题描述:
我有一个JavaScript变量如何把变量值内的另一个变量名在Javascript
var varNameValue = "Name";
现在我想使用其他
var x(varNameValue)y = "abc";
名内的
varNameValue
价值创造另一个变量
所以我的新变量的名称变成
var xNamey = "abc";
有没有办法做到这一点。请帮忙。
答
不直接在JavaScript中。如果你知道它运行的内容,那么你可以。例如,如果这是在浏览器中,它是在全球范围内(它映射到window
),那么你可以做
window["x"+varNameValue+"y"] = "abc";
同样的,如果它是一个对象上
var obj = {};
obj["x"+varNameValue+"y"] = "abc";
但就像没有任何上下文的独立变量一样?罗。
答
var varNameValue = "Name";
eval("var x" + varNameValue + "y = 'abc';")
alert(xNamey);
答
尝试
VAR OBJ = {}
VAR nameValue = “名称”;
的obj [ “X” + nameValue + “Y”] = “ABC”
然后你就可以使用obj.xNamey
此编辑为使比前者答案好得多访问它。 – amenadiel 2014-12-03 10:37:50
也,这[[x] + varNameValue +“y”] =“abc”;可以使用。 – 2014-12-03 10:40:29
当然......如果“这个”是正确的,那永远是一个挑战。更大的问题是,为什么你想要设置一个'var'的变量名称?在一个对象中,是的,我明白了;但只是在那里? – deitch 2014-12-03 10:44:15