gpt4 book ai didi

javascript - 排序功能有什么问题,还需要改进

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

我有一个 json 对象,其中有一些记录,我需要对对象进行排序,

代码:

var data = [
{
"MRData": {
"StandingsTable": {
"StandingsLists": [
{
"season": "2014",
"round": "5",
"DriverStandings": [
{
"position": "2",
"positionText": "1",
"points": "100",
"wins": "4",
"Driver": {...},
"Constructors": [...]
},
{
"position": "1",
"positionText": "2",
"points": "97",
"wins": "1",
"Driver": {...},
"Constructors": [...]
}
]
}
]
}
}
}
];

//这个函数有什么问题

function sortObj(obj, nextObj){
console.log(obj.position);
console.log(nextObj.position);
if(obj.position < nextObj.position){
return obj;
}else{
return nextObj;
}
}

var driverObjects = data[0].MRData.StandingsTable.StandingsLists[0].DriverStandings;
console.log(driverObjects);
var sortedData = driverObjects.sort(sortObj); //Do I need to use any other functions //like filter, map ?
console.log(sortedData);

Fiddle

看看控制台,为了使用输出,我排除了像这样的输出

[对象{ 位置=“1”,positionText=“1”,点=“100”,更多...},对象{ 位置=“2”,positionText=“2”,点=“97”,更多...}]

但它显示的内容与传递的函数相同。

  1. 请纠正函数错误。
  2. 给我一个优化的或更标准的代码实现

最佳答案

sortObj() 应返回值或值或0

你可以这样做..

function sortObj(obj, nextObj){
console.log(obj.position);
console.log(nextObj.position);
return nextObj.position-obj.position
}

关于javascript - 排序功能有什么问题,还需要改进,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23783317/

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