我試圖創建一個將某些值插入到對象中的腳本。將值插入循環中的對象
我基本上要通過一系列的對象會是這個樣子的,結束了 -
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