JavaScript での 2D 配列の並べ替え
JavaScript で列の値で 2D 配列を並べ替えるにはどうすればよいですか?
次の形式の 2D 配列があるとします:
[[12, "AAA"], [58, "BBB"], [28, "CCC"], [18, "DDD"]]
この配列を最初の列でソートすると、結果は次のようになります:
[[12, "AAA"], [18, "DDD"], [28, "CCC"], [58, "BBB"]]
解決策:
JavaScript では、列値による 2D 配列の並べ替えが簡単です。その方法は次のとおりです:
var a = [[12, 'AAA'], [58, 'BBB'], [28, 'CCC'],[18, 'DDD']]; a.sort(sortFunction); function sortFunction(a, b) { if (a[0] === b[0]) { return 0; } else { return (a[0] < b[0]) ? -1 : 1; } }
この関数は次のルールを使用します:
2 番目の列で配列を並べ替えるには、比較関数で a[0] を a[1] に置き換えるだけです。
a.sort(compareSecondColumn); function compareSecondColumn(a, b) { if (a[1] === b[1]) { return 0; } else { return (a[1] < b[1]) ? -1 : 1; } }
JavaScript ドキュメントを参照してください。並べ替え機能の詳細については、
以上がJavaScript で 2D 配列を列の値で並べ替えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。