为动态形成的object.variable赋值

时间:2013-06-14 09:13:20

标签: javascript html object

我有一个名为“gameObj”的对象,它有一个名为“op1”,“op2”的变量,...... 我想为对象的变量赋值。 这是我的代码:

    eval("gameObj.op"+i)

这给了我变量的值但是当我尝试分配一些值时,它会出错:

通过尝试

ReferenceError:分配中的左侧无效”:

   eval("gameObj.op"+i) = 10;

即使我尝试将其存储在如下变量中:

  var temp =  val("gameObj.op"+i)
  temp = 10;

它改变了 temp 的值,但没有改变gameObj.op1 / 2/3的值[即 - i的值]

如何为gameObj.op1分配一个值,比如说10?

1 个答案:

答案 0 :(得分:3)

请勿使用eval()

使用括号表示法:

gameObj['op' + i] = 10;