jqueryで多次元配列のソート方法を教えてください


var name = [
[0,6666,"saburo"],
[0,2222,"tarou"],
[1,4444,"hime"],
[0,5555,"zirou"],
[1,3333,"hanako"],
[0,6666,"saburo"]
];

name[1]が若い数字順、且つ、name[0]が0を優先して並び変える方法を教えてください。

並び替えごをこのようにしたいです。

var name = [
[0,2222,"tarou"],
[0,5555,"zirou"],
[0,6666,"saburo"]
[0,6666,"saburo"],
[1,3333,"hanako"],
[1,4444,"hime"]
];

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2016/07/02 02:45:03

回答1件)

id:a-kuma3 No.1

回答回数4973ベストアンサー獲得回数2154

jQuery 関係なくて、javascript 標準の範囲で、こんな感じ。

var before = [
    [0,6666,"saburo"],
    [0,2222,"tarou"],
    [1,4444,"hime"],
    [0,5555,"zirou"],
    [1,3333,"hanako"],
    [0,6666,"saburo"]
];

after = before.sort(function(a, b) {
    if (a[0] !== b[0]) {
        return a[0] - b[0];
    } else {
        return a[1] - b[1];
    }
});

参考:

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません