• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:【JavaScript配列のソート】2つのキーで)

【JavaScript配列のソート】2つのキーで条件を指定してソートする方法

dscriptyの回答

  • ベストアンサー
  • dscripty
  • ベストアンサー率51% (166/325)
回答No.1

こういうこと? https://ideone.com/8l2KI function compareFunction(a, b) { if (a[0] < b[0]) return -1; if (a[0] > b[0]) return 1; if (a[1] < b[1]) return -1; if (a[1] > b[1]) return 1; return 0; } var arr = [ ["5/5", "5/4", "リンゴ", 110] ,["5/3", "5/6", "バナナ", 130] ,["5/7", "5/2", "ミカン", 110] ,["5/3", "5/2", "イチゴ", 150] ]; arr.sort(compareFunction);

SilverWings001
質問者

お礼

ありがとうございます。 すごい、すごい。現在希望通りの動きをしてくれています。 まさにこの通りにしたかったのです。 こうやって見てみると、結構わかりやすいですね。 後はこの配列の大きさがどこまでシステム的に耐えられてくれるかです。 本当にありがとうございました。

関連するQ&A

  • 配列に入っている値のソート

    str(1)="bbb" str(2)="aaa" str(3)="ddd" str(4)="eee" str(5)="ccc" という配列があるとします。 これを昇順にソートさせて、 str(1)="aaa" str(2)="bbb" str(3)="ccc" str(4)="ddd" str(5)="eee" とさせたいのですが、どのようにすればよろしいでしょうか?

  • ExcelVBAで配列をSORT

    任意の範囲の内容を読み込んだ2次元配列に入っているデータをワークシートでのSORTのように任意のキー列(第3優先まで)で任意の順(昇降)でSORTするにはどのような命令を実行すればいいか教えてもらえませんか? なお、先頭行はデータ、もちろんキー以外の列のデータも同時に並べ替えをしたいのですが?

  • 二次元配列でソートがしたい

    二次元配列でソートがしたい 二次元配列でソートがしたい 開発環境:Visual Web Developer 2008 express 言語:Visual Basic 上記開発環境でWebアプリケーションを開発中です。 TextBoxを縦20行横10列の表形式に配置し、左から2番目の列に入力された数値をキーに、昇順に並べ替えができるような入力フォームを作成していますが、参考になるようなサイトが見つからなかったので、どなたか参考になるサイトやサンプルロジックを教えて頂けないでしょうか? よろしくお願いします。

  • 配列のソートがしたい

    sort関数等調べたのですがうまくできません。 やりたいことは http://q.hatena.ne.jp/1155090363 ↑で見つけた事とそっくりなのですが・・・。 ------------------------------------------- arrItem[n] という配列の一つの要素の中に、 タブで区切られた10個程のデータが入っています。 arrItem[0] = "5 ^ 店名5 ^ 品名5 ^ 価格5 ^ 割引額5 ^・・・^ 備考5" arrItem[1] = "2 ^ 店名2 ^ 品名2 ^ 価格2 ^ 割引額2 ^・・・^ 備考2" arrItem[2] = "11 ^ 店名9 ^ 品名9 ^ 価格9 ^ 割引額9 ^・・・^ 備考9" 一列目はSEQ番号でユニークですが、順番が並んでいません。 この配列をSEQ番号で並べ替えたいのですが、 sortだと文字列比較のためか桁数の違う数字の並べ替えが 上手くできません。数値としてのソート方法 が分かる方いらっしゃいましたらご教授願います。 もし可能なら、1列目を数値降順にしたり昇順にしたり、 また2列目を五十音順にソートしたり、 また4列目を価格の安い順にソートしたり と応用も可能ならばご教授願いたいです。 宜しくお願い致します。

  • Excel 2016 で、Σ値(値の個数)でソート

    品名 みかん りんご りんご バナナ 柿 のようなデータに対してピボットテーブルを作成し、「行」と「Σ値」にそれぞれ「品名」を指定すると、次のような表(レポート)ができあがります。 行ラベル 個数 / 品名 バナナ 1 みかん 1 りんご 2 柿 1 総計 5 ここまではいいのですが、この表を(「総計」は除いて)個数をキーとしてソートするのにはどうしたらいいのでしょうか。以前の版のExcelでは簡単にできたことができなくなって困っています。 いったん、表全体を値としての貼り付けを行うしかないのでしょうか。

  • 配列の中身を入れ替える方法

    非常に初心者的な問題だとは思いますがよろしくお願いします Array ( [0] => みかん [1] => りんご [2] => バナナ [3] => キウイ [4] => メロン [5] => スイカ) 上記のような配列があったとしまして、 [2] => バナナ [3] => キウイ [4] => メロン を、 [2] => イチゴ [3] => もも [4] => さば に変更したいのですが、 どのようにすればよいでしょうか・・・ かれこれ2日ほどやっているのですがわかりません・・・ よろしくお願いします。

    • 締切済み
    • PHP
  • php キーソート キーが重複した場合の処理

    php 入門者です。よろしくお願いします。 phpでcsvファイルを読み込み、連想配列に代入し、いろいろなキーでソートしたいと考えております。 例えば以下のようなcsvファイルがあるとします。 商品コード,商品名,価格,在庫数 001,りんご,100,5 002,みかん,200,10 003,ぶどう,200,3 004,バナナ,100,10 005,柿,300,5 このデータを、商品コードをキーにした連想配列を作成し、ksortなどでソートさせることはできました。 しかし、価格や在庫数でソートしようと思い、同じようにそれらをキーにした連想配列を作成しソートさせると、キーが重複してしまい、上書きされてしまいます。 そこで質問なのですが、 価格や在庫数でソートし、もし価格や在庫数が同じならば、商品コード順にソートする。 このようなソート方法を教えて下さい。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • PHP 配列の並べ替え

    phpでの配列操作に関して質問です。 配列 $fruit[]の中に [0]→{[name]りんご,[value]5} [1]→{[name]みかん,[value]6} [2]→{[name]メロン,[value]0} [3]→{[name]いちご,[value]1} [4]→{[name]ぶどう,[value]5} このようなデータが入っていたとして、 [value]の大きい順に並べ替えをしたいのですが、 どのような方法を行えば良いのでしょうか? 多分とても基礎的な問題だと思うのですが、 どうしても良い方法が思いつかないので、 どうぞ宜しくお願いします。

    • ベストアンサー
    • PHP
  • 2次元配列のソート

    2次元配列のデータをソートしたいのですが方法がわかりません。初歩的な質問ですが、ご存知の方、よろしくお願いいたします。 (例) 商品コード、商品名、金額、有効期限のデータを以下のように持っています。 $data[0] = ("001", "商品A", 5200, "2004/5"); $data[1] = ("002", "商品B", 350, "2005/1"); $data[2] = ("003", "商品C", 10800, "2004/3"); ・・・・ データの項目(商品コード、商品名など)数は固定ですが、データ数、内容は変化します。 2次元配列でデータがあり、商品コードで降順にソート、金額で昇順にソートなどのソートを行う方法はありますか? No.760468 で同じような質問があり、array_multisort が回答としてあがっていましたが、上記データの場合ソートできないようなので質問させていただきました。 なお、環境によりデータベースを使用することはできません。

    • ベストアンサー
    • PHP
  • 配列のキーとvalueをテーブルに書き込めますか

    いつもお世話になっております。 下記方法で 配列のデータのみinsertすることができました。 foreach($b as $Key =>$Value){ $sql ="INSERT INTO temp_memo (stylecode) VALUES ('{$Value}')"; mysql_query($sql); } テーブルには key と stylecodeの二つのフィールドがあります。 上記の方法だと 下記 value のみのinsertです。 key stylecode 0   りんご 0   みかん 0   いちご key も同時に テーブルに書き込むことは 可能でしょうか。 いろいろ検索してみましたが 見つかりませんでした。 初心者です。 どうかよろしくお願いいたします。

    • ベストアンサー
    • PHP