如何通过串联创建另一个变量来访问javascript变量值?

时间:2009-06-14 15:26:31

标签: javascript

请查看以下代码 -

var abc_text = "Hello";
var def_text = "world";

function testMe(elem) {
    var xyz = elem+"_text";
    alert(xyz);
}

testMe("abc");
testMe("def");

我正在尝试将前缀传递给函数,并尝试通过连接打印一些预定义的值。但上面的例子只打印“abc_text”和“def_text”..而不是“Hello”和“world”。我怎样才能让它发挥作用?

谢谢。

修改

我正在使用Jquery。

4 个答案:

答案 0 :(得分:6)

在这种情况下使用

var xyz = window[elem+"_text"];

答案 1 :(得分:4)

你可以评估xyz,但最好将abc_text和def_text存储在关联数组或对象中;


var text = {"abc" : "Hello", "def" : "Word"};

答案 2 :(得分:3)

var test={"abc":"Hello", "def":"World"};

function testMe(elem) { 
    var xyz = test[elem];
    alert(xyz); 
} 

testMe("abc"); 
testMe("def");

答案 3 :(得分:1)

这里有关于动态变量的精彩文章:

http://www.hiteshagrawal.com/javascript/dynamic-variables-in-javascript