【问题标题】:Javascript: Multidimensional array sort by specified index?Javascript:多维数组按指定索引排序?
【发布时间】:2011-05-21 21:25:08
【问题描述】:

如果我有一个如下所示的数组:

var 数组[0] = [$name, $date, $bTrue]; ... ... ...

如何按一维数组值之一对该数组进行排序?提前谢谢!

【问题讨论】:

    标签: javascript arrays multidimensional-array sorting


    【解决方案1】:

    使用简单的排序回调

    var arr = [[1,5,2],[1,8,2],[1,2,2]];
    
    console.log( arr );
    
    arr.sort( function( a, b )
    {
      // Sort by the 2nd value in each array
      if ( a[1] == b[1] ) return 0;
      return a[1] < b[1] ? -1 : 1;
    });
    
    console.log( arr );
    

    Array.sort() 方法接受一个回调,其中传递了两个元素。这是一个基本的冒泡排序

    • 如果要将a 排在b 之前,则返回-1(或任何负值)
    • 如果要将b 排在a 之前,则返回1(或任何正值)
    • 如果ab相等,返回0;

    【讨论】:

    • 谢谢彼得,感谢您的快速回复。
    猜你喜欢
    • 2015-08-27
    • 2015-11-02
    • 1970-01-01
    • 2018-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-02
    • 2017-10-10
    相关资源
    最近更新 更多