Javascript 在对象数组中排序和推送对象

Javascript 在对象数组中排序和推送对象,javascript,arrays,sorting,javascript-objects,Javascript,Arrays,Sorting,Javascript Objects,很抱歉缺少代码,但这是一个非常直截了当的javascript问题 我需要对对象数组进行排序,并将具有相同键/值对的对象推送到新数组中 我正在分类的对象是足球运动员。我让所有玩家都在一个物体阵列中,我想把每个位置都推到他们自己的阵列中 例如,每个对象都有一个位置键,因此任何关键位置值为QB的对象都应该被推入新的数组四分卫 什么是对对象进行排序并将它们放入适合我的场景的新数组的正确方法?您可以创建一个索引对象,其中包含迄今为止看到的所有位置,然后为每个位置累积一个玩家数组: 风险值数据=[ {位置

很抱歉缺少代码,但这是一个非常直截了当的javascript问题

我需要对对象数组进行排序,并将具有相同键/值对的对象推送到新数组中

我正在分类的对象是足球运动员。我让所有玩家都在一个物体阵列中,我想把每个位置都推到他们自己的阵列中

例如,每个对象都有一个位置键,因此任何关键位置值为QB的对象都应该被推入新的数组四分卫


什么是对对象进行排序并将它们放入适合我的场景的新数组的正确方法?

您可以创建一个索引对象,其中包含迄今为止看到的所有位置,然后为每个位置累积一个玩家数组:

风险值数据=[ {位置:四分卫,姓名:鲍勃}, {位置:中间,姓名:Jim}, {位置:四分卫,姓名:Ted}, ]; var位置={}; data.forEachfunctionitem{ 如果!位置中的item.position{ 位置[项目位置]=[]; } 位置[item.position].pushitem; }; 日志位置; 函数logx{ var div=document.createElementdiv; div.innerHTML=JSON.stringifyx; document.body.appendChilddiv; } 您可以使用Array.prototype.forEach:

风险值数据=[ {位置:四分卫,姓名:鲍勃}, {位置:中间,姓名:Jim}, {位置:四分卫,姓名:Ted}, ]; var-dataByPositions={}; data.forEachfunctionx{ 数据位置[x.position]=数据位置[x.position]| |[]; 数据位置[x.positions].pushx; }; //仅用于演示目的:
document.body.innerHTML=;这个被抛弃的问题的可能副本在同一天被复制并粘贴,基本上再次被问到。尽管另一个问题是重复的,但我建议关闭这个问题,因为它没有功能代码。遗憾的是,否决:请不要重复问题。