获取JavaScript中第二个变量命名的变量值

时间:2014-08-27 14:17:40

标签: javascript variables

我需要从第二个变量中分配一个变量名,然后在JavaScript中提示第一个变量的值。

下面是我想要实现的一个例子。

window.foo=0;
window.bar="window.foo";

//want to set an alert for window.bar in a way that returns 0
alert(window.bar); //returns window.foo
alert(Number(window.bar)); //returns window.NaN

在上面的示例中,我希望提醒值0.如何实现?谢谢。

1 个答案:

答案 0 :(得分:1)

如果他们是全局变量(就像那些那样),那么在"foo"上查找时,您只需使用"window.foo"而不是window

var name = "foo";
window.foo = 0;
alert(Number(window[name])); // 0;

但全局变量是一件坏事(tm)

要在没有全局变量的情况下执行此操作,请使用您自己的对象:

var name = "foo";
var obj = {};
obj.foo = 0;
alert(Number(obj[name])); // 0;

上述两种方法都有效,因为在JavaScript中,您可以使用点表示法和文字(obj.foo)或带括号的表示法和字符串(obj["foo"])来引用对象属性,以及在后一种情况下,字符串可以是任何表达式的结果,包括变量查找。