gpt4 book ai didi

javascript - JSON,按totalSessionsPlayed排序并输出前3名

转载 作者:行者123 更新时间:2023-12-03 07:13:13 24 4
gpt4 key购买 nike

我尝试按“totalSessionsPlayed”对 json 进行排序,然后将前 3 个输出到我的 div“show”中。

我认为只要我可以对 JSON 进行排序(我不知道该怎么做),我就可以只输出前 3 个对象。

fiddle :https://jsfiddle.net/jzhang172/wjL0wL5b/1/

var homes =  [{
"modifyDate": 1460338936000,
"champions": [
{
"id": 40,
"stats": {
"totalDeathsPerSession": 11,
"totalSessionsPlayed": 4,
"totalDamageTaken": 62347,
"totalQuadraKills": 0,
"totalTripleKills": 0,
"totalMinionKills": 57

}
},
{
"id": 75,
"stats": {
"totalDeathsPerSession": 6,
"totalSessionsPlayed": 1,
"totalDamageTaken": 44536,
"totalQuadraKills": 0,
"totalTripleKills": 0,
"totalMinionKills": 222
}
},
{
"id": 113,
"stats": {
"totalDeathsPerSession": 18,
"totalSessionsPlayed": 2,
"totalDamageTaken": 104626,
"totalQuadraKills": 0,
"totalTripleKills": 0,
"totalMinionKills": 94
}
},
{
"id": 9,
"stats": {
"totalDeathsPerSession": 30,
"totalSessionsPlayed": 7,
"totalDamageTaken": 174482,
"totalQuadraKills": 0,
"totalTripleKills": 0,
"totalMinionKills": 239
}
},
{
"id": 254,
"stats": {
"totalDeathsPerSession": 9,
"totalSessionsPlayed": 1,
"totalDamageTaken": 27748,
"totalQuadraKills": 0,
"totalTripleKills": 0,
"totalMinionKills": 26
}
}]
}
];

document.getElementById('show').innerHTML=homes[0].champions[0].id + ' '+homes[0].champions[1].id+ ' '+homes[0].champions[2].id;
<div id="show"></div>

最佳答案

您可以使用以下代码对对象进行排序:

homes[0].champions.sort(function(a, b) {
return parseFloat(a.stats.totalSessionsPlayed) - parseFloat(b.stats.totalSessionsPlayed);
});

对于降序排列,您需要切换a.stats.totalSessionsPlayedb.stats.totalSessionsPlayed

关于javascript - JSON,按totalSessionsPlayed排序并输出前3名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36539263/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com