【发布时间】:2016-06-20 13:46:16
【问题描述】:
这就是我所拥有的。一组对象:
var teachers = [{
Year: 2016,
FullName: "Matt",
Age: 39
},
{
Year: 2016,
FullName: "Sara",
Age: 25
},
...
];
还有另一个对象数组。这些将像这样嵌套:
var students = [[
{
Year: 2016,
FullName: "Zoe"
Age: 8
}
],
[
{
Year: 2016,
FullName: "Lulu"
Age: 9
},
{
Year: 2016,
FullName: "Leo",
Age: 13
}
],
[ // empty array here
],
[
{
Year: 2016,
FullName: "Lotta",
Age: 11
}
]
...
];
他们的组织方式是学生[0]是教师[0]的学生。学生 [4] 是教师 [4] 的学生,依此类推。
我试图做什么来获取每个学生的 FullName 属性“学生”,并将这些值放入一个名为“SundayStudents”的教师新属性的数组中。所以我最终会是:
teachers = [{
Year: 2016,
FullName: "Matt",
Age: 39,
SundayStudents: ["Zoe"]
},
{
Year: 2016,
FullName: "Sara",
Age: 25,
SundayStudents: ["Lulu", "Leo"]
},
...
];
我尝试了一个嵌套的 for 循环,但是学生数组的每个子数组中有不同数量的对象,并且它不会为新属性创建数组。我想我被困住了。
for (var j = 0, leng = teachers.length; j < leng; j++) {
for (var k = 0, lent = students.length; k < lent; k++)
Teachers[i].SundayStudents = Students[j][k].FullName;
}
欢迎任何提示。
【问题讨论】:
-
您可以使用
.push()追加到数组。
标签: javascript arrays loops