我正在研究一些与多维数组配合使用的功能。我想做的是按第一个值排序,然后按第二个值排序同时保持第一个值的排序。参见示例:
arrayToSort = [[1,5],[1,3],[1,2],[1,6],[2,6],[1,9],[1,11]];
I would like to sort this so it returns
[[1,2],[1,3],[1,5],[1,6],[1,9],[1,11],[2,6]];
我已经创建了一个函数,使用下面的函数按第一个值对数组进行排序,但我不确定如何准确地实现上面的目标。
function sortOne(cards){
arr = cards.sort(function(a,b) {
return a[0] > b[0];
});
return arr;
}
*来源:如何按列值对二维数组进行排序?
按第一个值排序,然后按第二个值排序:
data.sort(function(a, b) {
return a[0]-b[0] || a[1]-b[1];
});
这只是两个(标准数字(比较,由||
运算符链接,当第一个是0
时,该运算符返回右操作数。
有关处理任意长度数组(而不仅仅是元组(的通用比较函数,请参阅此处。