【发布时间】:2020-08-29 09:09:11
【问题描述】:
所以我有一个如下所示的对象数组:
group: [
0: {id: "16", name: "P1", courseId: "6", mentorId: "1", chatUrl: false, students: {0: 1, 1: 10, 2: 11},…}
1: {id: "17", name: "C1", courseId: "7", mentorId: "3", chatUrl: false, students: {0: 15, 1: 16, 2: 18},…}
2: {id: "22", name: "P2", courseId: "6", mentorId: "1", chatUrl: false, students: {0: 12, 1: 13, 2: 9},…}
3: {id: "23", name: "C2", courseId: "7", mentorId: "3", chatUrl: false, students: {0: 17, 1: 19, 2: 20},…}
4: {id: "24", name: "DEV", courseId: "10", mentorId: "1", chatUrl: false,…}].
我正在尝试按导师姓名对其进行排序,导师姓名是另一个数组中对象的属性,如下所示:
mentor: [
0: {id: "0", firstName: "Daniel", about: false,…}
1: {id: "1", firstName: "Mark", aboutl:false,…}
2: {id: "3", firstName: "Eric", about: false,…}
3: {id: "6", firstName: "John", about: false,…} ]
这些组通过属性mentorId 与导师相关,因此我必须将组数组中的属性mentorId 与导师数组中的id 进行比较,以获取组的所有导师,然后按这些导师的名字对组进行排序。这甚至可能吗?
输出应显示按导师名字字母顺序排序的所有组,如下所示:
group: [
0: {id: "23", name: "C2", courseId: "7", mentorId: "3", chatUrl: false, students: {0: 17, 1: 19, 2: 20},…}
1: {id: "17", name: "C1", courseId: "7", mentorId: "3", chatUrl: false, students: {0: 15, 1: 16, 2: 18},…}
2: {id: "22", name: "P2", courseId: "6", mentorId: "1", chatUrl: false, students: {0: 12, 1: 13, 2: 9},…}
3: {id: "16", name: "P1", courseId: "6", mentorId: "1", chatUrl: false, students: {0: 1, 1: 10, 2: 11},…}
4: {id: "24", name: "DEV", courseId: "10", mentorId: "1", chatUrl: false,…}
]
【问题讨论】:
-
输出会是什么样子?
-
“按导师姓名排序”是什么意思?按升序排序?还是按照导师姓名在导师数组中出现的顺序排序?
-
我编辑了这个问题,它应该按导师名字的字母顺序对组进行排序,升序或降序,这并不重要
标签: javascript arrays sorting object