我想知道是否可以从传递给javascript函数的参数创建变量名。像这样:
function createVar(number) {
var "number" + number;
}
createVar(1)
我是Stack Overflow和编程的新手,所以任何帮助都会受到赞赏。
答案 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".