如何按第二个数组降序排列多维数组?

时间:2015-06-08 15:18:45

标签: javascript arrays sorting multidimensional-array

我有一个JavaScript数组。

var array = [[12,3],[10,2],[8,1],[12,3],[7,1],[6,1],[4,1],[10,2],[12,3]]

我想按降序排列第二个值。预期的输出是

[[12,3],[12,3],[12,3],[10,2][10,2],[8,1],[7,1],[6,1],[4,1]

我试过

array.sort(function(array) {
  return array[1] - array[1]
}

不幸的是,这不起作用。

对单维数组进行排序很容易,但我不知道如何使用多维数组。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

sort函数的语法有点偏。您的函数应该采用两个参数。以下排序按内部数组中的第二个位置递减。



var array = [[12,3],[10,2],[8,1],[12,3],[7,1],[6,1],[4,1],[10,2],[12,3]];
console.log(array.sort(function(a, b) {
  return b[1] - a[1];
}));