我有一个对象数组
const myarray = [ { name: 'Alex', job: 'Doctor' }, { name: 'John', job: 'Taxi Driver' }, { name: 'Marc', job: 'Taxi Driver' }, ]
我如何为每个作业打印作业名称,然后打印所有相应的对象?
例如,我希望能够显示:
医生:亚历克斯
出租车司机:约翰、马克
你可以尝试这样的事情:
const myarray = [ { name: 'Alex', job: 'Doctor' }, { name: 'John', job: 'Taxi Driver' }, { name: 'Marc', job: 'Taxi Driver' } ]
const sorted = {}
myarray.forEach((e)=>{
if(e.job in sorted){
sorted[e.job].push(e.name);
}else{
sorted[e.job] = [e.name]
}
})
console.log(sorted);
要以您想要的格式打印它们:
const myarray = [ { name: 'Alex', job: 'Doctor' }, { name: 'John', job: 'Taxi Driver' }, { name: 'Marc', job: 'Taxi Driver' } ]
const sorted = {}
myarray.forEach((e)=>{
if(e.job in sorted){
sorted[e.job].push(e.name);
}else{
sorted[e.job] = [e.name]
}
})
for(const key in sorted){
var str = key+': ';
sorted[key].forEach(e=>str+=e+', ');
console.log(str.slice(0, -2));
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句