【发布时间】:2019-04-26 02:39:29
【问题描述】:
我已经对我的数组列表进行了排序,并按其各自的组号对其进行了排序,但我需要对其进行分组(假设由领导者和他/她的成员)。我想有额外的字段,如果对象没有相同的组号,它将自动标记为领导者,因此,如果对象具有相同的组号,则顺序中的第一个对象将被标记为领导者和其他将自动标记为成员。
这是我对数组列表进行排序的代码,它是控制台/输出。
$scope.sortedTopAgent = [];
var c = 0;
var sortTopAgentByGroup = function () {
for (const [index, value] of accountArray.entries()) {
for (const [index2, value2] of TeamArray.entries()) {
if (value2.accountname == value) {
c = c + 1;
$scope.sortedTopAgent.push(value2);
$scope.sortedTopAgent.sort(function (a, b) {
return a.groupNo - b.groupNo;
});
console.log($scope.sortedTopAgent)
//console >>
[{
"name": "John",
"groupNo": 1
},
{
"name": "Chelsea",
"groupNo": 1
},
{
"name": "Mark",
"groupNo": 1
},
{
"name": "Peter",
"groupNo": 5
},
{
"name": "Arya",
"groupNo": 5
},
{
"name": "Robert",
"groupNo": 7
},
{
"name": "Mary",
"groupNo": 8
}
]
// end of console
}
}
}
};
我想要一个如下所示的数组:
[{
"name": "John",
"groupNo": 1,
"leaderNo": 1,
"memberNo": ""
},
{
"name": "Chelsea",
"groupNo": 1,
"leaderNo": "",
"memberNo": 1
},
{
"name": "Mark",
"groupNo": 1,
"leaderNo": "",
"memberNo": 1
},
{
"name": "Peter",
"groupNo": 5,
"leaderNo": 2,
"memberNo": ""
},
{
"name": "Arya",
"groupNo": 5,
"leaderNo": "",
"memberNo": 2
},
{
"name": "Robert",
"groupNo": 7,
"leaderNo": 3,
"memberNo": ""
},
{
"name": "Mary",
"groupNo": 8,
"leaderNo": 4,
"memberNo": ""
}
]
【问题讨论】:
标签: javascript arrays angularjs