Javascript 在对象数组中对数组进行排序

Javascript 在对象数组中对数组进行排序,javascript,arrays,sorting,dictionary,Javascript,Arrays,Sorting,Dictionary,你好,我有一个数组的形式,我在我的流星模板显示 var data = [{text_name:'My life', score: [{name : 'james',score: 10}, {name : 'john',score : 40}, {name : 'Abu',score : 80}]}, {text_name:'The game real', score: [{name : 'penny',score: 30}

你好,我有一个数组的形式,我在我的流星模板显示

var data = [{text_name:'My life', 
score: [{name : 'james',score: 10}, 
        {name : 'john',score : 40},  
        {name : 'Abu',score : 80}]},
        {text_name:'The game real', 
score: [{name : 'penny',score: 30} 
        {name : 'john',score : 20} , 
        {name : 'Abu',score : 30}] }]
我想对
score
键进行排序,它是一个按降序排列的对象数组。使用
文本中的示例数据\u name:“我的生活”
我希望首先显示阿布的分数,因为他得分最高


我已尝试使用此链接上的代码进行排序。

尝试使用排序方法:

还要注意,正如评论中提到的,这不是有效的JS,我在上面发布的示例中添加了正确的格式


如果我理解正确的话,您要做的是让每个列表在其内部排序

下面是您需要做的:

// iterate over data
for (var i = 0; i < data.length; i++) {
  var item = data[i];
  // sort the item's score
  item.score.sort(function(a, b) {
    return b.score - a.score;
  });
}
//迭代数据
对于(变量i=0;i
这不是有效的JavaScript。请修复,以便我们了解您的意思(是
score:[…
?)此外,如果您尝试过,请发布出错的地方。还有,为什么要标记此内容?这不是有效的JavaScript。第一个
score:30}
后缺少逗号。我可以通过执行b.score.score-A.score.score使其正常工作。非常感谢您的帮助。
// iterate over data
for (var i = 0; i < data.length; i++) {
  var item = data[i];
  // sort the item's score
  item.score.sort(function(a, b) {
    return b.score - a.score;
  });
}