从javascript中的参数创建变量名称

时间:2015-01-25 19:56:01

标签: javascript function variables

我想知道是否可以从传递给javascript函数的参数创建变量名。像这样:

function createVar(number) {
var "number" + number;
}
createVar(1)

我是Stack Overflow和编程的新手,所以任何帮助都会受到赞赏。

3 个答案:

答案 0 :(得分:0)

可以将Object解释为关联数组,您可以在其中指定索引并按索引名称获取值(哈希):

var x = Array();
x[number] = value;

单变量名是针对程序员的,当你在代码中动态设置变量时,代码很难维护和理解。

答案 1 :(得分:0)

老实说,我不明白为什么这会有用,因为每次你想要使用变量时,你都必须用你的数字参数来搜索它。

然而,你可以这样做,虽然不是你所描述的确切方式:

function createVar(number){
  eval("var number" + number.toString() + ";");
}

但是,此变量只能在函数内访问,以使其全局分配给窗口对象:

function createVar(number){
  window["number" + number] = 15; // creates "global" variable
}

正如我之前所说的那样,我并不认为这是有用的,[i]曾经[/ i],如果你想按数字对价值进行分层,你会更好用数组关闭。

答案 2 :(得分:0)

您可以将此附加到window对象,但请注意它将是全局的。例如:

function createVar(varName, value) {
    window[varName] = value;
}

createVar("test", "Hello World");
alert(test); // Outputs "Hello World".