它在我上次测试中有效,但现在它让我很难过。基本上我有这段代码:
var myOBJ = {};
for (var i = 0; i < myitems.length; i++) {
myOBJ[i].itemtype = myitems.type;
myOBJ[i].name = myitems.name;
}
inside myitems
是我出于某种原因需要重写到另一个 object
的数据。但我有错误
Error: myOBJ[i] is undefined
谁能告诉我我缺少什么?
最佳答案
您不能通过索引访问对象字面量,您必须通过键 访问它。
如果 myOBJ
是一个数组,那么您可以通过索引访问它。或者,如果 myOBJ
的键是数字,您的代码就可以工作。
如果您首先实例化每个对象,您可以很容易地使每个键成为一个数字,然后能够通过某种伪索引访问每个对象。
myOBJ[i] = {};
这将输出如下内容:
{
1: {};
//etc.
}
但为什么不简单地使 myOBJ
成为一个数组呢?
关于Javascript : Adding Key Value pair literal giving undefined result,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28721834/