0
function giveValue(n){
    ["r"+n]=5;
}
giveValue(10);

你明白了。

关键是我有一些名称相似的变量,最后只有一个数字不同。多次使用 switch 语句和几个变量就可以了,但是对于这个特定的项目,它让我发疯了。我知道我可以做到:

var r2="lol";
var someVar=eval("r"+2);
//someVar=="lol"

我想知道我是否可以做这样的事情,但动态引用分配的左侧。

可能吗?

4

2 回答 2

3

如果你真的想这样做,这应该有效:

function giveValue(n){
    window['r'+n] = 5;
}
giveValue(10);

console.log(r10)

但请不要这样做!

你真的应该使用数组

于 2010-12-01T20:29:06.673 回答
2

最好的方法是创建一个名为的数组r

var r = [];
r[2] = 5;
于 2010-12-01T20:28:07.403 回答