我需要创建一个 Ajax/Jquery 调用,它将使用数组中的“alltime”var 从最小到最大对数组 (https://fcctop100.herokuapp.com/api/fccusers/top/alltime) 进行排序。
$("#start").click(function(){
function SortByalltime(a, b) {
var aNum = a.alltime.sort();
var bNum = b.alltime.sort();
return ((aNum < bNum) ? -1 : ((aNum > bNum) ? 1 : 0));
}
$.get("https://fcctop100.herokuapp.com/api/fccusers/top/recent", function(data) {
//here we run the function to sort the array of data before transforming it to table
data.sort(SortByalltime);
var table = '<table>'
for (var i = 0; i < data.length; i++) {
table += '<tr><td>' + data[i].alltime + '</td><td><img width=20 height=20 src="' + data[i].img + '"></td><td>' + data[i].lastUpdate + '</td><td>' + data[i].recent + '</td><td>' + data[i].username + '</td></tr>';
}
$('body').append(table);
});
});
这是我当前的电话,如有任何帮助,我将不胜感激。
最佳答案
alltime
是一个整数 而不是数组
所以简单的替换
var aNum = a.alltime.sort();
var bNum = b.alltime.sort();
与
var aNum = a.alltime;
var bNum = b.alltime;
从小到大
function SortByalltime(a, b) {
return (a.alltime - b.alltime);
}
从大到小
function SortByalltime(a, b) {
return (b.alltime - a.alltime);
}
关于javascript - 使用 Ajax 和 Jquery 按最大到最小的数字对数组进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37345238/