Javascript 通过包含引用的数组修改特定属性

Javascript 通过包含引用的数组修改特定属性,javascript,attributes,Javascript,Attributes,我怎样才能使以下内容更有效 var varToChange = ['playerList',24,'hp',24]; //Sending that info to the client... if(varToChange.length == 2){ window[varToChange[0]] = varToChange[1] } ... if(varToChange.length == 4){ window[varToChange[0]][varToChange[1]][varToCh

我怎样才能使以下内容更有效

var varToChange = ['playerList',24,'hp',24];

//Sending that info to the client...

if(varToChange.length == 2){
 window[varToChange[0]] = varToChange[1]
}
...
if(varToChange.length == 4){
 window[varToChange[0]][varToChange[1]][varToChange[2]][varToChange[3]] = varToChange[4]
}
var tmp=window;
变量长度=varToChange.length;
对于(变量i=0;i

请注意,你这样做对我来说是一个警告信号。可能有更好的方法来实现您正在做的任何事情。

这是JavaScript吗?请添加此标签。是。这是javascript。你应该跳过
varToChange[3]
?不,我的错。但概念不变。工作正常D但是是的,我这样做可能不是“正确”的编码。不过,它可能会变得很方便。
var tmp = window;
var length = varToChange.length;
for (var i = 0; i < length - 2; i++) {
    tmp = tmp[varToChange[i]];
}
tmp[varToChange[length - 2]] = varToChange[length - 1];