这里我想在数组的内部数组中推送对象。我该怎么做?
ticketsToAdd = [];
ticketsToAdd.push({
"TicketId": "",
"Attendees": []
})
for(var i=0; i<5; i++) {
ticketsToAdd['Attendees'].push({
"EmailID": "",
"Phone": "",
"FirstName": "",
"LastName": "",
"Company": ""
})
}
答案 0 :(得分:5)
您需要一个索引来访问数组元素。
ticketsToAdd[0]['Attendees'].push();
// ^^^
var ticketsToAdd = [],
i;
ticketsToAdd.push({ TicketId: "", Attendees: [] });
for (i = 0; i < 5; i++) {
ticketsToAdd[0]['Attendees'].push({ EmailID: "", Phone: "", FirstName: "", LastName: "", Company: "" });
}
console.log(ticketsToAdd);
&#13;
.as-console-wrapper { max-height: 100% !important; top: 0; }
&#13;
答案 1 :(得分:2)
数组中没有数组。
数组内的对象内部有一个数组。
您需要首先访问该对象,然后才能访问其中的数组。
ticketsToAdd[0].Attendees.push(...)
答案 2 :(得分:1)
如果您只将一次推入ticketsToAdd
数组,
使用,
for(var i=0; i<5; i++) {
ticketsToAdd[0]['Attendees'].push({
"EmailID": "",
"Phone": "",
"FirstName": "",
"LastName": "",
"Company": ""
})
}
但是,如果多次推送,则必须使用索引i
由于您要向ticketsToAdd
数组中添加更多对象,因此在将数据插入该数组时,请使用迭代中的数字i
。
使用ticketsToAdd.length
来获取长度。
var ticketsToAdd = [];
ticketsToAdd.push({
"TicketId": "",
"Attendees": []
})
for(var i=0; i<ticketsToAdd.length; i++) {
for(var y = 0; y<5; y++)
{
ticketsToAdd[i]['Attendees'].push({
"EmailID": "",
"Phone": "",
"FirstName": "",
"LastName": "",
"Company": ""
})
}
}
这会从数组中获取所有对象,并在每个对象中推送5次。