我有一个嵌套的对象数组,如下所示:
mainArray = [
{ name: 'a',age: 10, details: [ { desc: 'test1' , score: 6 }, { desc: 'testa' , score: 10 }] },
{ name: 'b',age: 20, details: [ { desc: 'test2' , score: 30 }, { desc: 'testb' , score: 34 }] },
{ name: 'c',age: 40, details: [ { desc: 'test3' , score: 40 }, { desc: 'testc' , score: 7 }] }
]
我想要做的是根据分数对我的 mainArray 进行排序:
首先,我想按降序对详细信息数组进行排序(得分最高的在前)
然后按降序对mainArray进行排序(得分最高的在前)
此外,可能存在详细信息在数组中只有一项的情况
这是我想要的结果:
mainArray = [
{ name: 'c',age: 40, details: [ { desc: 'test3' , score: 40 }, { desc: 'testc' , score: 7 } ] }
{ name: 'b',age: 20, details: [ { desc: 'test2' , score: 34 }, { desc: 'testb' , score: 30 } ] }
{ name: 'a',age: 10, details: [ { desc: 'test1' , score: 20 }, { desc: 'testa' , score: 6 } ] }
]
我尝试过的是展平整个主数组,然后按分数排序。但我正在寻找更有效的解决方案。我也喜欢 lodash 等或 vanillajs 之类的库
沧海一幻觉
慕后森
jeck猫
相关分类