按第二个值对2D数组进行排序

时间:2010-08-19 18:08:21

标签: javascript

我有一个数组,我想按数字字段排序而不是名称。

var showIt = [
  ["nuCycleDate",19561100],
  ["ndCycleDate",19460700],
  ["neCycleDate",0],
  ["nlCycleDate",0]
];

由于

2 个答案:

答案 0 :(得分:20)

您可以为sort提供比较功能。

showIt.sort(function(a,b){
    return a[1] - b[1];
});

ab是您的数组中的项目。 sort期望返回值大于零,零或小于零。第一个表示ab之前,零表示它们相等,最后一个选项首先表示b

答案 1 :(得分:1)

This site建议不要使用参数而不分配临时变量。试试这个:

showIt.sort(function(a, b) {
    var x = a[1];
    var y = b[1];
    return x - y;
});