排序数组并获得前5个值

时间:2016-11-07 17:23:10

标签: jquery arrays

我创建了一个数组:

var stores = [];

我为每个添加了一些信息:

stores[id] = distance;

如何根据距离对数组存储进行排序并获取前5个ID并在页面上显示?

谢谢!

2 个答案:

答案 0 :(得分:0)

你可以使用函数sort,按照降序对数字进行排序,你应该这样做:

stores.sort(function(a, b){return b-a});

然后,如果你想获得前5个元素,你可能正在寻找slice函数。

stores.slice(0,5);

var arr = []; 
arr['2'] = 50; 
arr['3'] = 173; 
arr['4'] = 198;  
arr['5'] = 273; 
arr['6'] = 68; 
arr['7'] = 7; 
arr['26'] = 21; 

arr = arr.filter(function(item){
    return item !== undefined;
});

arr.sort(function(a, b){return b-a});

arr = arr.slice(0,5); 
console.log(arr);

答案 1 :(得分:0)

这是javascript解决方案:

这是修改后的解决方案

var stores = [ ];
stores['40'] = '152';
stores['22'] = '55';
stores['33'] = '3';
stores['28'] = '2';

console.log(stores)
console.log(stores.sort((a, b) => a - b))