我试图创建一个将某些值插入到对象中的脚本。将值插入循环中的对象
我基本上要通过一系列的对象会是这个样子的,结束了 -
myObj.data.person[0].name = 'name 1';
myObj.data.person[1].name = 'name 2';
myObj.data.person[2].name = 'name 3';
等
这里是我的对象,它包含对象的数组。
var addressBook = {
data: [
person = {
name: '',
address: ''
}
]
}
和for循环插入重复信息。
for (i=0; i < 10; i++)
{
myObj.data.person[i] = {name: 'Joe Bloggs', address: 'Main Street'};
console.log(myObj.data.person.name);
}
每当我运行此代码我碰到下面的错误 -
Uncaught TypeError: Cannot set property 'person' of undefined at <anonymous>:14:24
所以,问题是我在哪里去了?此外,这会被认为是创建一个对象列表(例如第1个人,第2个人等)的正确方法吗?我最终想着如何创建类似Person构造函数的东西,并使用循环来创建多个Person对象)。
感谢,
您需要正确地宣布你的'myObj'财产, – Tom
声明你的对象作为'addressBook',但后来尝试访问它作为'myObj'? – Connum
'data:[person = ...]'是无稽之谈。如果'data'是一个数组,那么你也不能'data.person [']''。你可能只需要'data:[{name ...}]',并操作'data [i]'。 – deceze