你好,我有一个这个表格的数组,我正在我的流星模板上显示。
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
键,它是一个对象数组。使用text_name:'My life'
中的示例数据,我希望首先显示Abu分数,因为他得分最高。
我尝试使用此链接Sorting an array of JavaScript objects上的代码进行排序。
答案 0 :(得分:1)
如果我理解正确,你要做的就是让每个列表都在自己内部排序。
所以这就是你需要做的事情:
// 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;
});
}
答案 1 :(得分:0)
尝试使用排序方法:
另请注意,正如评论中提到的JS无效,我在上面发布的示例中添加了正确的格式。
var d = data.map(function(d) {
return d.score.sort(function(a, b) {
return a.score + b.score;
});
});