基于[i]对数组[i] [0],[i] [1]进行排序

时间:2015-11-08 05:59:22

标签: javascript arrays sorting

我正在尝试对具有多个集合或对的数组进行排序;我希望根据每对的第一个数字对它们进行排序。

我的代码如下:

sizeof(*X)

我的调试如下:

function randomMap(numOfHills){
    for(var i=0; i<numOfHills; i++){
        xRandomForHills = Math.floor((Math.random() * 2000));
        if(xRandomForHills >= 1700){
            xRandomForHills = xRandomForHills - 300;
        }
        if(xRandomForHills <= 300){
            xRandomForHills = xRandomForHills + 300;
        }
        yRandomForHills = Math.floor((Math.random() * 300));
        if(yRandomForHills <= 100){
            yRandomForHills = yRandomForHills + 300;
        }
        hillArray.push([xRandomForHills,yRandomForHills]);

console.log("my Hill = " + hillArray[i]);
    }
    sortArray(numOfHills);
};

function sortArray(numOfHills){
    hillArray.sort(function(a, b){return b-a});
    hillArray;
    for(var i=0; i<numOfHills; i++){
    console.log("Sorted = " + hillArray[i]);
    }
    drawMap();
};

我希望对数组的第一部分进行排序,使它看起来像:

my Hill = 917,136
my Hill = 885,274
my Hill = 876,347
my Hill = 1011,184
my Hill = 563,273

Sorted = 917,136
Sorted = 885,274
Sorted = 876,347
Sorted = 1011,184
Sorted = 563,273

1 个答案:

答案 0 :(得分:1)

排序中的ab是数组

试试这个

hillArray.sort(function(a, b){return a[0]-b[0]; });

<强> JSFIDDLE