我有一个名为“ 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?
最佳答案
不要使用eval()
!
使用方括号表示法:
gameObj['op' + i] = 10;