Используйте .map()
для получения идентификаторов колледжа:
let collegeIds = data.college.map(({ id }) => id);
Используйте .reduce()
для идентификаторов студентов:
let studentIds = data.college.reduce((a, c) => (
a.concat(c.students.map(({ id }) => id))
), []);
Используйте .reduce()
, чтобы получить массив массивов, где каждый массив содержит идентификаторы учеников:
let studentInEachCollege = data.college.reduce((a, c) => (
a.push(c.students.map(({ id }) => id)), a
), []);
Это позволит вам получить доступ к каждому студенту колледжа, используя индекс, такой как studentInEachCollege[0]
для первого колледжа, studentInEachCollege[1]
для второго и так далее.
Демо-версия:
var data = {
"college":[
{
"id":1,
"school":"abc",
"course":"cde",
"students":[
{
"id":1,
"name":"abc 123",
"number":"156888"
},
{
"id":2,
"name":"abc 123",
"number":"156888"
}
]
},
{
"id":2,
"school":"xyz",
"course":"lopl",
"students":[
{
"id":3,
"name":"abc 123",
"number":"156888"
},
{
"id":4,
"name":"abc 123",
"number":"156888"
}
]
}
]
};
let collegeIds = data.college.map(({ id }) => id);
let studentIds = data.college.reduce((a, c) => (
a.concat(c.students.map(({ id }) => id))
), []);
let studentInEachCollege = data.college.reduce((a, c) => (
a.push(c.students.map(({ id }) => id)), a
), []);
console.log(collegeIds);
console.log(studentIds);
console.log(studentInEachCollege);
Документы: