如何在Javascript中使用字符串作为变量名?

时间:2011-05-28 06:54:01

标签: javascript

  

可能重复:
  Is there a way to access a javascript variable using a string that contains the name of the variable?
  JavaScript: Get local variable dynamicly by name string

一个简单的代码来说明我的问题 -

var chat_1 = "one";

var chat_2 = "two";

var id = "1";

var new = ?? variabalize( 'chat_' + id ) 

我希望变量new赋值变量 - chat_1的值为“one”

3 个答案:

答案 0 :(得分:26)

停止。重新组织您的代码。如果要选择带变量的变量,则必须为它们进行逻辑分组。说清楚。

var chat = {
    "1": "one",
    "2": "two"
};
var id = 1;
var new_is_a_keyword_and_cant_be_an_identifier = chat[id];

答案 1 :(得分:5)

这不是一个好习惯,但你可以这样做:

var i=1;
//window['name' + i] will now access the variable

来源:http://www.i-marco.nl/weblog/archive/2007/06/14/variable_variables_in_javascri

答案 2 :(得分:2)

您可以使用全局window对象,假设这些对象未在函数内定义:

var new = window['chat_' + id];