数据库中的数据
"data": [
{
"recruiter": "Venkatesh",
"Total": [
{
"_id": "6368de60a13476be793928bb",
"Status": "Client Submitted",
"created_by": "Venkatesh"
},
{
"_id": "636b71192fdb6190cd3ac4ab",
"created_by": "Venkatesh",
"Status": "Hired"
},
{
"_id": "636b941b2fdb6190cd3acd15",
"created_by": "Venkatesh",
"Status": "Interview Scheduled"
},
{
"_id": "636cd69d2fdb6190cd3b1be2",
"created_by": "Venkatesh",
"Status": "Client Submitted"
},
{
"_id": "6372301975e1e77a9c3b5896",
"Status": "Client Submitted",
"created_by": "Venkatesh"
},
{
"_id": "637761ed655965f094779322",
"created_by": "Venkatesh",
"Status": "Hired"
},
{
"_id": "637b04f5655965f094779d40",
"created_by": "Venkatesh",
"Status": "Hired"
}
]
},
{
"recruiter": "Sudhir",
"Total": [
{
"_id": "636b73f42fdb6190cd3ac765",
"created_by": "Sudhir",
"Status": "Client Submitted"
},
{
"_id": "6371efd059a6b9f34f910527",
"created_by": "Sudhir",
"Status": "Hired"
},
{
"_id": "63724e7c75e1e77a9c3b5cb7",
"created_by": "Sudhir",
"Status": "Client Submitted"
},
{
"_id": "6373210c3182820f833b41a4",
"created_by": "Sudhir",
"Status": "Interview Scheduled"
},
{
"_id": "637332423182820f833b493b",
"created_by": "Sudhir",
"Status": "Client Submitted"
}
]
},
我想要的回应
[
{
created_by: 'Venkatesh',
Hired: 7,
interviewscheduled: 7,
clientsubmitted: 7
},
{
created_by: 'Sudhir',
Hired: 5,
interviewscheduled: 5,
clientsubmitted: 5
},
]
代码
for(let i=0;i<=fil.length-1;i++){
let x={hired:[],is:[],cs:[]}
for(let j=0;j<=fil[i].Total.length-1;j++){
if(fil[i].Total[j].Status="hired"){
// h.push({hired:fil[i].Total[j].Status})
x.hired.push("hired")
}
if(fil[i].Total[j].Status="Interview Scheduled"){
// is.push({interviewscheduled:fil[i].Total[j].Status})
x.is.push("is")
}
if(fil[i].Total[j].Status="Client Submitted"){
// cs.push({cs:fil[i].Total[j].Status})
x.cs.push("cs")
}
} fil_arr.push({created_by:fil[i].recruiter,Hired:x.hired.length,interviewscheduled:x.is.length,clientsubmitted:x.cs.length})
}
我要显示基于招聘人员的状态键的已计划、客户已提交、已聘用的面试总数。我无法找到正确的输出。我尝试使用for循环,但它不能给出正确的输出。请务必帮助我解决此问题。提前感谢。
2条答案
按热度按时间y53ybaqx1#
从
status
值到最终输出的property
名称的简单Map可以使任务更容易。我会这样尝试:
注意:有时最好使用Array.prototype.map()和Array.prototype.reduce(),如数组内置函数。
xytpbqjk2#
以下是使用Map的解决方案:
注意,您应该考虑协调属性大小写,例如所有camelCase或snake_case。
此外,一旦在上面的招聘人员属性中获得信息,就可以复制属性created_by。